Release notes · May 19, 2026 · 3 min read
SMHUB-OS v1.0.0.beta1
The very first beta of SMHUB OS v1.0.0 — substantial performance updates along with new features at the core of SMHUB.
✨ New Features
- Updated bootloader — mainline OpenSBI 1.8 and U-Boot 2026.04 for better stability and hardware support during boot.
- Fastboot flashing — Type-C flashing now uses fastboot (requires the new smhub-flasher) for much more reliable device recovery.
- Component renaming — the smhub-web package is renamed to smhub-ui to better reflect its role as the primary UI.
- Packaging improvements — a new service helper library for opkg scripts streamlines package management.
- Persistent device identity — EEPROM storage regions for hostname and SSH keys, allowing them to survive a full Type-C flash.
- SD card configuration — a new sdcard config service to configure device parameters via a JSON file on an SD card.
- Dual-core support — communication with the secondary RTOS processor, laying the groundwork for ESPHome on the hub.
- Hardware customization — Linux device tree overlays for dynamic peripheral configuration.
- Hardware RNG — a new kernel driver for the Hardware RNG to improve security and entropy.
⚡ Performance Improvements
- Hardware crypto offload — kernel + OpenSSL support for hardware-accelerated AES and SHA256, improving speeds and lowering CPU usage.
- F2FS for user data — new installs use the Flash-Friendly File System (F2FS) on the user partition, optimized for eMMC (requires a full re-install for existing users).
- Upgraded USB networking — switched the USB networking gadget to CDC-NCM for increased throughput and stability.
- BFG CPU scheduler — migrated the kernel task scheduler to BFG for smoother multitasking and responsiveness.
- Memory compression — enabled zRAM to compress memory pages in RAM, expanding available memory without a swap file that would wear the flash.
🔧 Bug Fixes
- Library paths — fixed ldconfig so custom libraries installed in /opt paths are recognized.
- Smart home stability — disabled smhub-mqtt-bridge by default to resolve conflicts with the primary mosquitto broker.
- MQTT permissions — mosquitto now runs with restricted user privileges instead of root, with fixed logging.
- USB reliability — vendor quirks for the USB PHY driver resolve an interrupt-storm bug, reducing CPU load.
- Time synchronization — added a driftfile to ntpd for long-term clock stability (thanks Ian).
- Package management — restored the python lzma module lost during a Buildroot update.
- App compatibility — patched opkg to respect the Require-OS-Version metadata rule, so packages meant for newer firmware aren't installed by accident.