Release Notes v1.2.0
What's new in boneIO Black v1.2.0
boneIO Black v1.2.0 Release Notes
This is a major release with significant improvements to the web UI, configuration management, and overall stability.
🎉 Major Features
Web-based Configuration UI
Complete redesign of the web interface with full configuration management capabilities:
- Visual Configuration Editor - Configure all entities (outputs, covers, events, binary sensors) through an intuitive web interface
- Real-time Validation - Instant feedback on configuration errors with schema validation
- Live Preview - See changes immediately without manual file editing
- Multi-language Support - Full Polish and English translations
System Management
- Auto-update System - Automatic updates from GitHub releases with one-click installation
- Factory Reset - Reset to default configuration for different device types (24x16, 32x10, cover, cover_mix)
- Configuration Backups - Automatic backup creation before factory reset with restore capability
- System Restart - Restart application directly from web UI with confirmation
Enhanced Cover Support
- Venetian Blinds - Full support for venetian blinds with tilt control
- Platform Selection - Choose between
time_based,venetian, orpreviouscover platforms - Tilt Duration - Configurable tilt duration for venetian blinds
- Visual Tilt Control - Dedicated tilt slider in the UI
🔧 Configuration Changes
Action Schema Refactoring
Breaking Change: Action configuration has been modernized:
pinfield is now deprecated - useboneio_outputinsteadboneio_coverfield added for cover actions- Backward compatibility maintained - old configurations with
pinwill continue to work
Migration Example:
# Old format (still works)
actions:
single:
- action: output
pin: OUT_17
# New format (recommended)
actions:
single:
- action: output
boneio_output: OUT_17Event Configuration
- Click Event Types - New click event options:
single,double,long,release - Time Period Fields - Improved handling of time periods (e.g.,
double_click_duration: 220ms) - Default Value Stripping - Fields matching schema defaults are no longer saved to YAML
Cover Configuration
- Platform Field - Default changed from
previoustotime_based - Output Selection - Improved dropdown with area grouping and validation
- Duplicate Prevention - Cannot select the same output for both open and close relays
🐛 Bug Fixes
State Management
- Fixed state restoration when changing cover platform types
- Fixed
AttributeErrorwhenrestored_stateis a string instead of dictionary - State file (
state.json) now properly cleaned during factory reset - Fixed cover state saving and restoration after reload
UI/UX Improvements
- Fixed output reloading in event and binary sensor forms
- Fixed area assignment and display
- Fixed caching issues with configuration reload
- Fixed translation issues across the interface
- Fixed sensor form validation and submission
- Fixed cover killing/stopping functionality
Modbus
- Removed deprecated modbus functions
- Fixed modbus sensor loading and configuration
- Fixed modbus helper functionality
Sensors
- Fixed virtual sensor unique ID generation
- Fixed adding and removing temperature sensors
- Fixed sensor diagnostic section in Home Assistant
- Fixed I2C sensor control issues
Input Detection
- Fixed input event detection and sending
- Fixed race condition between covers and MCP expanders
- Fixed input click event handling
🔄 Technical Improvements
Backend
- TimePeriod Serialization - Fixed JSON serialization to return strings (e.g.,
"220ms") instead of objects - Config Loading - Use raw YAML data to preserve string formats
- State File Safety - Write to temporary file first, then rename atomically
- Logger Improvements - Better logging for debugging and troubleshooting
- Filesystem Protection - Added protection against filesystem overflow to prevent system crashes
Frontend
- React Component Refactoring - Improved component structure and reusability
- OutputSelectDropdown - New reusable component with filtering and exclusion logic
- SimpleTimePeriodInput - Dedicated component for time period configuration
- Form Validation - Enhanced validation with better error messages
- Package Updates - Updated all frontend dependencies
Integration
- Home Assistant 2024.12+ - Full compatibility with latest Home Assistant
- MQTT Improvements - Better MQTT connection handling
- One Wire Support - Added support for One Wire sensors (DS18B20)
- Virtual Energy Sensor - New virtual energy sensor support
📦 New Features
Node-RED Integration
- Added Node-RED view in web interface
- Proxy configuration for Node-RED access
Nginx Proxy
- Configurable nginx proxy port
- Better reverse proxy support
Diagnostic Tools
- Sensors moved to diagnostic section in Home Assistant
- Improved troubleshooting capabilities
- Better error messages and logging
Debian 13 System Image
- Ready-to-use Debian 13 Image - Pre-configured system image available for easy installation
- Simplified setup process for new users
- All dependencies pre-installed and configured
🔐 Security & Stability
- Improved error handling throughout the application
- Better validation of user inputs
- Safer file operations with atomic writes
- Configuration backup before destructive operations
📝 Documentation
- Updated configuration examples for all device types
- Improved inline help and tooltips
- Better error messages with actionable suggestions
⚠️ Breaking Changes
-
Action Schema: While backward compatible,
pinfield is deprecated. Update configurations to useboneio_outputorboneio_cover. -
Cover Platform Default: Default platform changed from
previoustotime_based. Existing configurations are not affected. -
Home Assistant Version: Requires Home Assistant 2024.12 or newer.
🚀 Upgrade Instructions
From v0.12.x
-
Backup Your Configuration
cp -r ~/boneio ~/boneio_backup_$(date +%Y%m%d) -
Update the Application
- Use the web UI auto-update feature, or
- SSH to device and run:
pip install --upgrade boneio
-
Review Configuration
- Check for deprecated
pinfields in actions - Update to
boneio_outputorboneio_coveras needed
- Check for deprecated
-
Restart Application
- Use web UI restart button, or
- SSH:
sudo systemctl restart boneio
Factory Reset (Optional)
If you want to start fresh with example configuration:
- Navigate to System Update page in web UI
- Select your device type (24x16, 32x10, cover, cover_mix)
- Click "Factory Reset"
- Configuration backup will be created automatically
- Application will restart with default configuration
🙏 Acknowledgments
Thank you to all users who provided feedback and bug reports during the development cycle!
📞 Support
- Documentation: https://boneio.eu/docs/black
- GitHub Issues: https://github.com/boneIO-eu/app_black/issues
- Community: Join our Discord server