]> ###2026.07.23### - UI: one consistent text color across the Monitor tabs, Settings and the dashboard tile, replacing the several shades of gray that were harder to read on some themes. Appearance only — no change to what's collected or shown. ###2026.07.10.2### - NEW: Performance tab — real-time per-controller graphs (throughput, IOPS, %util, latency, PHY error-rate, temperature). Sampled ~2s in the browser from /proc/diskstats + sysfs (zero-dependency, no sampler daemon, no flash writes); history is in-browser only and resets on reload. Toggle in Settings (default on). - NEW (advanced, opt-in, OFF by default): Firmware/BIOS Update tab. Enable it in Settings to detect the card, run a read-only per-controller verify, upload a model-correct firmware image (auto-detects storcli / sas2flash / sas3flash, or upload the tool), and flash ONE controller behind hard guardrails — array must be stopped, typed-FLASH confirmation, single-flight lock — with a live log and reboot prompt. Flash tools are proprietary and never bundled. Read the README safety section first: a wrong image can permanently brick the controller. - UI refresh: refreshed Monitor / Settings / dashboard-tile styling (rounded cards, cleaner tabs, temperature ring) and a branded plugin icon. No change to what's shown, just how it looks. ###2026.07.10.1### - Internal architecture refactor — no visible change, same output on every tab. The storcli/lsiutil backend choice, controller enumeration, and driver detection are now one shared module (scripts/lib.sh hba_each); the PHY/Drives/Events tabs pick their columns from an explicit "backend" field instead of inferring it from the data shape, so a new column can't misfire - Event-log archive and the cached background read are now standalone, unit-tested modules (event_archive.php, cached_read.php) - Removed the duplicated backend_storcli.sh and fixed a driver-string detection order that could differ between code paths ###2026.07.09.2### - Fixed "Backend produced no output" on the Overview when a slow storcli scan exceeded the web timeout — the hardware read now runs as a detached background job (the only hardware reader) and the page polls a result file until ready, so a slow first read can never fail or be thrown away ###2026.07.09.1### - Monitor page now opens instantly with a "Loading HBA information" banner; the hardware read runs in the background (no more page-load hang) - Settings page shows the Access Method (storcli / lsiutil) with zero lag - Open HBAviewer Monitor button shows a load-time confirmation popup ###2026.07.09### - Settings moved to User Utilities menu (was System Settings) - lsiutil Port field now hidden for non-SAS2 controllers - Redesigned settings buttons: 'Save Settings First' + 'Open HBAviewer Monitor' (conditional) - Added note about monitor load time for slow systems - Fixed XML compatibility for Unraid parser - Dashboard tile display with multi-controller support - Hard drive icon throughout interface &pkgURL; &md5; rm -rf /usr/local/emhttp/plugins/hbaviewer tar -xJf /boot/config/plugins/hbaviewer/hbaviewer.txz -C / chmod +x /usr/local/emhttp/plugins/hbaviewer/hbaviewer.x86_64 chmod +x /usr/local/emhttp/plugins/hbaviewer/scripts/*.sh if [ ! -f /boot/config/plugins/hbaviewer/hbaviewer.cfg ]; then mkdir -p /boot/config/plugins/hbaviewer printf "HBA_PORT=1\nALERT_THRESHOLD=80\n" > /boot/config/plugins/hbaviewer/hbaviewer.cfg fi # Persisted dir for user-uploaded flash tools (sas2flash/sas3flash) — survives updates. mkdir -p /boot/config/plugins/hbaviewer/tools removepkg hbaviewer rm -rf /usr/local/emhttp/plugins/hbaviewer