josie / alder-tools

Rails: stress-ng differential probe results into config + defaults

9c0f2baba2aac7aedb8186203899cda2c86c896c
josie <administrator@josie-c.com> · 2026-08-29T12:46 · browse files at this commit

parents: 16cdf79

diff --git a/adlermon.conf b/adlermon.conf
index 173849a..c20756d 100644
--- a/adlermon.conf
+++ b/adlermon.conf
@@ -1,16 +1,26 @@
-# adlermon board config — ASRock Z690M ITX/ax (nct6798)
-#
-# Labels marked ? are best guesses from voltage patterns; verify against the
-# BIOS HW Monitor and fix the label. Unwired inputs read floating garbage:
-# set rail.inN.hide = true to hide one, or give it a label to show it.
-# For other boards: delete/override rows freely. Full key list in
-# src/config.rs (vcore_limit, temp_warn, temp_crit, vcore_bar_max,
-# power_bar_max, rail.inN.label, rail.inN.hide).
+# Default rail map: ASRock Z690M ITX/ax (nct6798), probe-verified 2026-08-29
+# via stress-ng differential testing (idle vs cpu vs memory load):
+#   in0  CPU Vcore   0.71 idle → 1.17 under load (confirmed)
+#   in4  ~1.00 V, wiggles with CPU compute (VCCIO candidate)
+#   in9  ~1.04 V, dips slightly under CPU compute (SA/IO candidate)
+#   in1  ~1.01 V, dead flat (fixed rail: SA/VDDQ class)
+#   in12 ~1.14 V, dead flat, load-tested NOT Vcore (fixed rail)
+#   in14 ~1.50 V, dead flat (NOT DRAM VDD: DDR5 runs 1.10-1.25 V; fixed rail)
+#   in2/in7 ~3.42, in3 ~3.33, in8 ~3.18 (3.3 V family / 5 V dividers)
+#   in5/6/10/11/13 floating garbage (unwired) — hidden
 
-# vcore_limit = 1.403   # Intel stock spec for 12600KF
-# temp_warn   = 80.0
-# temp_crit   = 95.0
-# vcore_bar_max = 1.50  # bar scale floors; auto-scale rises above these
-# power_bar_max = 200.0
-
-# rail.in12.label = VCCSA   # example: relabel an input
+rail.in0.label  = CPU Vcore
+rail.in1.label  = Rail 1.01
+rail.in2.label  = +5V
+rail.in3.label  = +3.3V
+rail.in4.label  = VCCIO?
+rail.in5.hide   = true
+rail.in6.hide   = true
+rail.in7.label  = +5V
+rail.in8.label  = 3.3V aux
+rail.in9.label  = CPU rail 2?
+rail.in10.hide  = true
+rail.in11.hide  = true
+rail.in12.label = Fixed 1.14
+rail.in13.hide  = true
+rail.in14.label = Fixed 1.5V
diff --git a/src/config.rs b/src/config.rs
index 91a573f..6362eb5 100644
--- a/src/config.rs
+++ b/src/config.rs
@@ -34,26 +34,27 @@ impl Default for Config {
     }
 }
 
-/// Best-guess rail map for ASRock Z690M ITX/ax (nct6798). Voltage evidence
-/// from 2026-08-29 probe; labels are GUESSES except in0/12 (load-tested) —
-/// verify against the BIOS HW monitor and fix in the config file.
+/// Default rail map: ASRock Z690M ITX/ax (nct6798). in0 CONFIRMED Vcore;
+/// differential stress-ng probing 2026-08-29: in1/in12/in14 are dead-flat
+/// fixed rails (NOT Vcore, NOT DDR5 VDD); in4/in9 respond to CPU compute;
+/// in5/6/10/11/13 float (unwired). "?" = evidence-based guess.
 pub fn default_rails() -> Vec<Rail> {
     vec![
         rail("in0", "CPU Vcore", false),
-        rail("in1", "VCCSA?", false),
-        rail("in2", "+5V?", false),
+        rail("in1", "Rail 1.01", false),
+        rail("in2", "+5V", false),
         rail("in3", "+3.3V", false),
-        rail("in4", "VCCIN?", false),
+        rail("in4", "VCCIO?", false),
         rail("in5", "", true),
         rail("in6", "", true),
-        rail("in7", "+5V?", false),
-        rail("in8", "3VSB", false),
-        rail("in9", "VCCIO?", false),
+        rail("in7", "+5V", false),
+        rail("in8", "3.3V aux", false),
+        rail("in9", "CPU rail 2?", false),
         rail("in10", "", true),
         rail("in11", "", true),
-        rail("in12", "VCCSA?", false),
+        rail("in12", "Fixed 1.14", false),
         rail("in13", "", true),
-        rail("in14", "DRAM VDD", false),
+        rail("in14", "Fixed 1.5V", false),
     ]
 }