SolarBit OS - Version 1.6 Release Notes
π Version 1.6 - Advanced Miner Automation Update
Release Date: November 2025
π Major Features
Advanced Miner Power Rail Automation System
Complete overhaul of the 12V and 5V miner power rail automation with intelligent multi-factor decision making.
New Features:
- Independent Rail Configuration: 12V and 5V rails now have completely separate automation settings
- Multi-Factor ON Logic: Miner rails turn ON only when ALL conditions are met:
- Battery voltage β₯ user-defined threshold
- Solar input wattage β₯ user-defined threshold
- Conditions maintained for user-defined duration
- Smart OFF Logic: Miner rails turn OFF when EITHER condition is met:
- Battery voltage drops below threshold (immediate)
- Solar wattage drops below threshold for defined duration
- Persistent Configuration: All settings stored in EEPROM and survive reboots
- User-Friendly UI: Expandable configuration panels in the Controls page
- Prevents Power Cycling: Duration-based logic prevents rapid on/off cycling
Configurable Parameters (per rail):
Each rail (12V and 5V) has 6 independent parameters:
- ON Battery Voltage - Minimum battery voltage to enable (default: 13.7V)
- ON Solar Wattage - Minimum solar input wattage required (default: 15W)
- ON Duration - How long conditions must be met before turning ON (default: 10 seconds)
- OFF Battery Voltage - Battery voltage threshold to disable (default: 12.7V)
- OFF Solar Wattage - Solar wattage threshold to disable (default: 10W)
- OFF Duration - How long low wattage must persist before turning OFF (default: 10 seconds)
Default Behavior:
- Turn ON: Battery β₯13.7V AND Solar β₯15W for 10 seconds
- Turn OFF: Battery <12.7V OR Solar <10W for 10 seconds
π§ Technical Changes
Firmware (V1.6.ino)
New Data Structures:
- Added
MinerRailConfigstruct with 6 parameters + runtime state tracking - Created global instances:
miner12VConfigandminer5VConfig - Added default configuration constants
EEPROM Storage:
- Allocated addresses 270-313 (~43 bytes) for miner configuration
- Magic number validation:
0xBB88 - Automatic defaults on first boot or invalid config
New Functions:
getSolarWattage()- Extracts wattage from solar sensor data stringloadMinerConfigFromEEPROM()- Loads saved configuration with fallback to defaultssaveMinerConfigToEEPROM()- Persists configuration to EEPROM- Complete rewrite of
automatedMinerControl()- Implements new multi-factor logic
API Endpoints:
WiFi Server:
GET /getMinerConfig- Returns current configuration as JSONPOST /saveMinerConfig- Updates configuration (JSON body)
Ethernet Server:
GET /getMinerConfig- Mirror of WiFi endpointPOST /saveMinerConfig- Mirror of WiFi endpoint
Setup Integration:
- Miner configuration loaded automatically during boot
- Debug logging shows loaded configuration values
User Interface Changes
HTML (index.html):
- Removed hard-coded automation text ("Auto mode: ON at 13.7V, OFF at 12.7V")
- Added expandable configuration panels for both rails
- Integrated into Controls page under Miner Controls section
- 6 input fields per rail with clear labels
- Toggle buttons to show/hide configuration panels
- Individual save buttons per rail
JavaScript (script.js):
toggleMinerSettings(rail)- Show/hide configuration panelloadMinerConfig()- Fetch current settings from firmwaresaveMinerConfig(rail)- POST new settings to firmware- Automatic configuration loading when panels are opened
- Input validation and user feedback
CSS (style.css):
.miner-settings- Container styling.miner-config-panel- Panel with card styling.setting-row- Flex layout for labels and inputs- Responsive input styling with theme support
- Dark mode compatible
π Bug Fixes
Compilation Fixes:
- Fixed typo:
sendEthernetJsonResponseβsendEthernetJSONResponse - All function names now match declarations correctly
π Version String Updates
Updated all version references from V1.5.1 to V1.6:
- Firmware: All 5 section headers, debug logs, and fallback HTML
- UI: Dashboard title, firmware version display, console logs
- Documentation: Comments and headers updated
Total locations updated: 18 version strings across all files
π Breaking Changes
None - Fully Backward Compatible
- Existing installations will automatically use default settings
- Previous hard-coded behavior (13.7V ON, 12.7V OFF) preserved as defaults
- EEPROM layout extended without affecting existing data
- UI remains functionally identical for users who don't configure advanced settings
π¦ Files Modified
Firmware:
V1.6.ino- Core firmware with new automation system
Web Interface:
data/index.html- Updated Controls page with configuration panelsdata/script.js- New JavaScript functions for configuration managementdata/style.css- New styling for configuration panels
All Files:
- Version strings updated to V1.6 throughout