M.2 UPS PMH V8B5 — Advanced application header P2
EXT0: P2 pin 11, 0..5.2 V, selector 0.
EXT1: P2 pin 12, 0..32 V, selector 1.
Ground: P2 pins 1, 6 or 14.
USE ONLY ONE INPUT AT A TIME. Leave the other OPEN, not grounded.
This is one shared ADC channel. Software selection changes voltage scaling only.
R75 must be 1.00 kohm, +/-0.5% or better. R76=1.4k, R68=19.6k.
Factors: EXT0 x2.4, EXT1 x20.6. Nominal reference 3.300 V.
Selector: command 0x6B offset 0x08 byte, saved after an accepted change.
Result: status 0x69 offset 0x12 word, packed BCD 0.01 V.
0x0330=3.30 V; 0x1234=12.34 V; 0xFFFF=unavailable.
An open input does not necessarily report 0xFFFF.
A 3.3 V readout was reported correct after R75 replacement.
Compare both ranges against a meter; no calibrated full-range accuracy is claimed.

sudo python3 /opt/M2_UPS_PMH/M2_PMH_config.py
# Select menu 10; 0=EXT0, 1=EXT1; confirm YES exactly.
sudo python3 /opt/M2_UPS_PMH/M2_PMH_status.py --watch 5

sudo i2cset -y 1 0x6b 0x08 0x00 b
sleep 3
sudo i2cget -y 1 0x69 0x12 w
