code wiki / (root) / nx_transducer_characterizer.nx

nx_transducer_characterizer.nx

buildroot/runtime/nx_transducer_characterizer.nx

11940 B212 linesdepth 3pulls 3 transitivereach 15 importersview sourcekind library
docsdependenciesstructsconstsfunctions

about

nx_transducer_characterizer.nx -- meta-level instrument characterization. module: nishi-core.perception.transducer_characterizer depends: nishi-core.perception.profile + nishi-core.io.syscalls disk_kb: 6 capability: PERCEPTION wired_status: PARTIAL_WIRED MISSING_CAPABILITIES: - STIMULUS_GENERATION (log-swept-sine, MLS, calibrated reference; queued, depends on nx_synthesis_engine landing) - FFT_RESPONSE_COMPUTE (FFT + cross-spectrum / auto-spectrum for time-domain transducers; queued, depends on nx_fft landing) - SPATIAL_RESPONSE_COMPUTE (gamma curves, gamut measurement, spatial-frequency response for visual transducers) - CALIBRATION_REFERENCE_APPLY (load stored reference-transducer calibration and apply offset before response computation) - PROVENANCE_STORE_WRITE (persist measured curve to provenance curve store) license_tier: PUBLIC_NISHI_SUBSTRATE genealogy_id: feedback-substrate-primitives-meta-not-one-off_2026 + feedback-substrate-does-heavy-lifting-user-is-partner-not-gate_2026 + feedback-multi-species-perceptual-substrate-not-anthropocentric_2026 + farina_2000_swept_sine_room_acoustics_aes + schroeder_1979_mls_measurement + poynton_2003_digital_video_image_systems + feedback-end-to-end-bit-traceability-architecture Per cardinals [[feedback-substrate-primitives-meta-not-one-off]] and [[feedback-substrate-does-heavy-lifting-user-is-partner-not-gate]]: THIS primitive characterizes ANY transducer chain — audio output (DAC + amp + speaker), audio input (mic + preamp + ADC), haptic motor, camera sensor, accelerometer, display, thermocouple, gas/scent sensor, hydrophone, even composite multi-stage chains. Originally scoped to a "rig" during dog perceptual test bring-up, then promoted to meta-level when the user surfaced reuse across products. Reuse set served by this single primitive: - Dog perceptual test rig (first use, audio output FRF)

dependencies 2 imports · 8 importers

nx_syscalls.nx nx_perceptual_profile.nx nx_transducer_characterizer.nx nx_assembly_guide.nx nx_calibration_drift_monitor.nx nx_chemical_dispenser.nx nx_haptic_render.nx nx_instrument_diagnostician.nx nx_realism_score.nx nx_signal_compensator.nx nx_synthesis_engine.nx

imports: nx_syscalls.nxnx_perceptual_profile.nx

imported by: nx_assembly_guide.nxnx_calibration_drift_monitor.nxnx_chemical_dispenser.nxnx_haptic_render.nxnx_instrument_diagnostician.nxnx_realism_score.nxnx_signal_compensator.nxnx_synthesis_engine.nx

structs

none

consts

64const NX_TXR_KIND_AUDIO_OUTPUT: i64 = 1 // DAC + amp + speaker chain
65const NX_TXR_KIND_AUDIO_INPUT: i64 = 2 // mic + preamp + ADC chain
66const NX_TXR_KIND_VIBRATION_OUTPUT: i64 = 3 // haptic motor, LRA, ERM
67const NX_TXR_KIND_VIBRATION_INPUT: i64 = 4 // accelerometer, geophone
68const NX_TXR_KIND_VISUAL_OUTPUT: i64 = 5 // display, LED matrix, projector
69const NX_TXR_KIND_VISUAL_INPUT: i64 = 6 // camera sensor, photodiode array
70const NX_TXR_KIND_THERMAL_OUTPUT: i64 = 7 // Peltier, resistive heater
71const NX_TXR_KIND_THERMAL_INPUT: i64 = 8 // thermocouple, IR sensor, RTD
72const NX_TXR_KIND_PRESSURE_INPUT: i64 = 9 // pressure sensor, hydrophone
73const NX_TXR_KIND_CHEMICAL_INPUT: i64 = 10 // gas / scent / volatile sensor
74const NX_TXR_KIND_CHEMICAL_OUTPUT: i64 = 11 // scent cartridge dispense
75const NX_TXR_KIND_ELECTRICAL_LOOPBACK: i64 = 12 // pure electrical, no air gap
76const NX_TXR_KIND_ROOM_ACOUSTIC: i64 = 13 // room itself as transducer
78const NX_TXR_KIND_COMPOSITE_CHAIN: i64 = 14 // multi-stage, user-defined
103const NX_TXR_STIM_LOG_SWEPT_SINE: i64 = 1 // audio + vibration default
104const NX_TXR_STIM_LIN_SWEPT_SINE: i64 = 2
105const NX_TXR_STIM_MLS: i64 = 3 // Schroeder 1979
106const NX_TXR_STIM_PINK_NOISE: i64 = 4
107const NX_TXR_STIM_WHITE_NOISE: i64 = 5
108const NX_TXR_STIM_TONE_BURST: i64 = 6
109const NX_TXR_STIM_KNOWN_REFERENCE: i64 = 7 // bit-identical reference signal
110const NX_TXR_STIM_TEST_PATTERN: i64 = 8 // visual transducer: gradient,
112const NX_TXR_STIM_STEP_RESPONSE: i64 = 9 // thermal default
113const NX_TXR_STIM_GAS_BOLUS: i64 = 10 // chemical: known
115const NX_TXR_STIM_PRESSURE_RAMP: i64 = 11 // pressure transducer
134const NX_TXR_VERDICT_PASS: i64 = 0
135const NX_TXR_VERDICT_MARGINAL: i64 = 1 // measurable but compensable
136const NX_TXR_VERDICT_FAIL_REPAIRABLE: i64 = 2 // diagnostic emitted a fix
137const NX_TXR_VERDICT_FAIL_UNRECOVERABLE: i64 = 3 // transducer physically broken
138const NX_TXR_VERDICT_REFERENCE_MISSING: i64 = 4 // no calibrated reference loaded
139const NX_TXR_VERDICT_DEPENDENCY_MISSING: i64 = 5 // PARTIAL_WIRED default

functions

80func nx_txr_kind_name(k: i64) -> *u8
117func nx_txr_stim_name(s: i64) -> *u8
141func nx_txr_verdict_name(v: i64) -> *u8
158func nx_transducer_characterize(name_ptr: *u8, name_len: i64,
177func nx_transducer_apply_reference_calibration(ref_name_ptr: *u8,
187func nx_transducer_get_last_verdict(name_ptr: *u8, name_len: i64) -> i64
196func nx_transducer_default_stimulus_for_kind(kind: i64) -> i64