BLDC Silicon Fault Evidence

Two MCU hardware-in-the-loop run: STM32 target firmware, Oracova base board plant and fault injector, real phase/hall wiring, RTT evidence captured through probe-rs.

6silicon verdicts
4 -> 0unsafe drives after Hall A guard
FAIL -> PASSsame fault, guarded target

Verdict Cards

Nominal commutation

Unguarded target

PASS

Healthy six-step hall sequence selects the expected active phase.

Expected
PASS
Expectation
MET
Unsafe drive
0
Evidence hash
882f553a6d7b

Hall A stuck low

Unguarded target

FAIL

A stuck Hall A line creates valid-looking wrong sectors; unguarded firmware keeps driving.

Expected
FAIL
Expectation
MET
Unsafe drive
4
Evidence hash
83f848006ea0

Hall A stuck low

Guarded target

PASS

The same fault is converted into a latched no-drive state by the invalid-hall guard.

Expected
PASS
Expectation
MET
Unsafe drive
0
Evidence hash
c6aa16c7e324

Hall bus forced 000

Unguarded target

PASS

All hall lines low is treated as invalid input; phases stay off.

Expected
PASS
Expectation
MET
Unsafe drive
0
Evidence hash
f79987e41d7f

Skipped hall sector

Unguarded target

FAIL

The oracle sees a sequence jump; this remains the next guard to add.

Expected
FAIL
Expectation
MET
Unsafe drive
0
Evidence hash
00641270c1a4

Swapped commutation sectors

Buggy target

FAIL

A copy-paste commutation-table bug drives the wrong phase in two sectors.

Expected
FAIL
Expectation
MET
Unsafe drive
8
Evidence hash
d1fd03dca377

Fault Counters

unsafe drive commutation mismatch sequence fault
Nominal commutation golden
0
0
0
Hall A stuck low golden
4
8
0
Hall A stuck low guarded
0
24
0
Hall bus forced 000 golden
0
24
0
Skipped hall sector golden
0
0
7
Swapped commutation sectors buggy
8
8
0

Audit Table

CaseVariantVerdictUnsafeMismatchInvalid shutdownSeq faultVerdict hash
Nominal commutation Unguarded target PASS 0 0 0 0 882f553a6d7b
Hall A stuck low Unguarded target FAIL 4 8 4 0 83f848006ea0
Hall A stuck low Guarded target PASS 0 24 4 0 c6aa16c7e324
Hall bus forced 000 Unguarded target PASS 0 24 24 0 f79987e41d7f
Skipped hall sector Unguarded target FAIL 0 0 0 7 00641270c1a4
Swapped commutation sectors Buggy target FAIL 8 8 0 0 d1fd03dca377

Firmware Hashes