Collimator LED Control Box — R1. Unit-level (system) product: a precision current-source hub built on the Accordion M1 platform, trimmed for a customer to control their LED range. Successor to R0 (R0 lived only in the filesystem workbook, not Trace).
Architecture — Accordion M1 platform: a Raspberry Pi 4B on the mainboard hosts the module stack and exposes a C#/Python API over USB. USB-C PD 20 V / 100 W input. Hammond 1455N1201BK enclosure, Phoenix Contact push-in I/O, active cooling, physical power button.
Module stack (each its own Trace project — dependencies): | Role | Project | Rev | |---|---|---| | Mainboard / system controller (RPi4B carrier) | ESH10000597 | R1 | | Precision ADC/DAC (16-bit set / 24-bit readback) | ESH10000590 | R2 | | 8-ch current source (LED outputs) | ESH10000584 | R1 | | Mini-PSU Precision Module (light-table power) | ESH10000690 | R0 |
Capabilities: 8 × LED current channels 0–450 mA (16-bit set / 24-bit readback); 2 × light-table voltage channels 0–24 V at up to 1.5 A; switched external-PSU control; 2-point calibration stored in NVM; software-controllable status LEDs.
This is a unit-level project — requirements are stated from the unit perspective; module/mainboard internal design is owned by the respective ESH projects (linked as dependencies). Requirements REQ-001…026 inherited (Draft) from the R0 baseline. Verification plan and issue list to be rebuilt for R1.
Milestones
| Code | Title | Status | Target | Achieved | TC |
|---|---|---|---|---|---|
| MS-002 | Panel tape-out | marker | 2026-06-26 | — | 0 / 0 |
| MS-003 | Integration build & bring-up | marker | 2026-08-28 | — | 0 / 0 |
| MS-004 | DVT verification complete | marker | 2026-09-04 | — | 0 / 0 |
| MS-005 | Customer delivery & sign-off | marker | 2026-09-18 | — | 0 / 0 |
| MS-001 | Requirements approved | achieved | — | 2026-06-23 | 0 / 0 |
Items (2)
| Code | Status | Severity | Kind | Title | Date |
|---|---|---|---|---|---|
| E-001 | open | info | decision | Mechanical panels (4) tracked under ESH10000672, not as separate projects | 2026-06-23 |
| E-002 | open | info | decision | Test solution: unit-level test board (in 672) + module-level Accordion Module Tester (ESH10000518) | 2026-06-23 |
Requirements
| Code | Status | Category | Title | Statement | Acceptance |
|---|---|---|---|---|---|
| REQ-001 | approved | Functional | 8 independently controllable LED current channels | The device shall provide 8 independently controllable LED current output channels. | All 8 channels can be set and held independently without cross-interference. |
| REQ-002 | approved | Performance | LED channel current range 0–450 mA | Each LED current channel shall control output current in the range 0–450 mA. | Set-point sweep 0–450 mA; measured output remains within tolerance at all set-points. |
| REQ-003 | approved | Performance | LED current control resolution 16-bit | Each LED current channel shall have a control resolution of 16 bits. | Minimum LSB step ≤ 450 mA / 65535 ≈ 6.9 µA confirmed at full scale. |
| REQ-004 | approved | Performance | LED current measurement 24-bit ADC | Each LED current channel shall measure actual output current with 24-bit ADC resolution. | ADC measurement resolution ≤ 0.3 µA; readback tracks actual output current within measurement uncertainty. |
| REQ-005 | approved | Performance | LED channel settling time documented | LED current channel settling time shall be measured and documented. | Settling time measured and recorded in DVT report for at least one representative channel. |
| REQ-006 | approved | Functional | 2 independently controllable light-table voltage channels | The device shall provide 2 independently controllable voltage output channels for light tables. | Both channels controllable independently, 0–24 V, up to 1.5 A. |
| REQ-007 | approved | Performance | Light-table regulation 0–24 V at up to 1.5 A | Each light table channel shall regulate output voltage over the range 0–24 V at up to 1.5 A. | Output voltage within 12-bit accuracy across full range; no shutdown at 1.5 A load. |
| REQ-008 | approved | Performance | Light-table voltage resolution 12-bit | Light table channel voltage control shall have 12-bit resolution. | Minimum LSB step ≤ 24 V / 4095 ≈ 5.9 mV confirmed. |
| REQ-009 | approved | Functional | Switched on/off control of external PSU | The device shall provide switched on/off control of one external power supply. | External PSU switches on and off reliably under software command. |
| REQ-010 | approved | Interface | C# and Python API over USB | The device shall be fully controllable via a C# and Python API over USB. | All channels and functions exercisable from both C# and Python API; no manual intervention required. |
| REQ-011 | approved | Interface | Powered from USB PD 20 V / 100 W | The device shall accept power from a USB PD source at 20 V, max 100 W. | Device powers on and operates correctly from a 20 V / 100 W USB PD source. |
| REQ-012 | approved | Mechanical | Hammond 1455N1201BK enclosure | The device shall be housed in a Hammond 1455N1201BK enclosure. | Final assembly fits within and is mechanically secured inside the specified enclosure. |
| REQ-013 | approved | Mechanical | Phoenix Contact push-in external connectors | All external electrical connections shall use Phoenix Contact push-in connectors. | 100% of external I/O connectors are Phoenix Contact push-in type; no other connector families used. |
| REQ-014 | approved | Mechanical | Unique serial number label | Each unit shall bear a unique serial number label on the enclosure. | Serial number label present and legible on assembled unit. |
| REQ-015 | approved | Environmental | Internal temp ≤ 50 °C at full load, 23 °C ambient | The device shall operate at full output capacity without any internal temperature exceeding 50 °C at 23 °C ambient. | Thermal soak at full load in 23 °C ambient; all measured internal temps ≤ 50 °C after stabilisation. |
| REQ-016 | approved | Functional | IR-LED load compatibility | The LED current channels shall be compatible with IR-LED loads, enabling IR-LED current control and monitoring via the existing collimator outputs. | IR-LED driven on at least one channel; current set-point and ADC readback function correctly with IR-LED load. |
| REQ-017 | approved | Mechanical | Active cooling (fan) | The device shall include active cooling (fan) to maintain thermal stability under full load. | Fan present and operational; contributes to meeting REQ-015 thermal limit. |
| REQ-018 | approved | Mechanical | Physical power on/off button | The device shall include a physical power on/off button. | Button present on enclosure; device powers on and off correctly when operated. |
| REQ-019 | approved | Performance | Clamp voltage 5 V; dissipation ≤ 0.79 W/ch, ≤ 6.3 W total | The LED current drive clamp voltage shall be 5 V; maximum power dissipation shall not exceed 0.79 W per channel or 6.3 W total across all 8 channels. | Clamp voltage measured at 5 V; per-channel dissipation ≤ 0.79 W at maximum rated current. |
| REQ-020 | approved | Performance | Light-table current limit 0–1.5 A, 12-bit | Each light table channel shall have a settable constant current limit in the range 0–1.5 A with 12-bit resolution. | Current limit set-point sweep 0–1.5 A; LSB step ≤ 1.5 A / 4095 ≈ 0.37 mA confirmed. |
| REQ-021 | approved | Functional | 2-point calibration of all 8 LED channels | The device shall support 2-point (offset + gain) calibration of all 8 LED current channels via a dedicated calibration tool/script. | Calibration tool executes successfully for all 8 channels; offset and gain coefficients updated without error. |
| REQ-022 | approved | Functional | 2-point calibration of both light-table channels | The device shall support 2-point (offset + gain) calibration of both light table voltage output channels via a dedicated calibration tool/script. | Calibration tool executes successfully for both light table channels; offset and gain coefficients updated without error. |
| REQ-023 | approved | Functional | Calibration coefficients in NVM, applied at power-on | Calibration coefficients shall be stored in device non-volatile memory and applied automatically at power-on. | After calibration and power-cycle, calibrated values persist and are applied; pre-calibration coefficients no longer active. |
| REQ-024 | approved | Performance | Post-calibration accuracy | After calibration, all 8 LED current channels and both light table channels shall meet their specified accuracy requirements. | Post-calibration accuracy check at 0%, 50%, and 100% of range; LED current within ±6.9 mA; light table voltage within ±5.9 mV. |
| REQ-025 | approved | Functional | All status LEDs software-controllable, toggle-off via API | All status LEDs on the device shall be software-controllable and shall support being toggled off via the API. | All status LEDs can be turned off via API command; no LED illumination observed when disabled. |
| REQ-026 | approved | Design | Per-channel ADC current readback functional on all 8 channels | The per-channel ADC shunt current readback shall function on all 8 LED current channels. _Carried from R0 design log DL-001 (resolved): CH7 ADC shunt readback was non-functional because R111 on ESH10000584 was incorrectly mounted (should be NM, like R112–R116) and back-drove the ADC6/CH7 node low. R1 design shall ensure R111 is not-mounted so all 8 channels read back correctly without rework._ | All 8 LED current channels return a valid, monotonically tracking ADC current readback when driven; no channel reads stuck/low. R111 on ESH10000584 confirmed NM in the R1 build. |
Test Cases
No test cases recorded.
Coverage Matrix
| REQ | Title | Category | Coverage | Linked Test Cases |
|---|---|---|---|---|
| REQ-001 | 8 independently controllable LED current channels | Functional | approved | — |
| REQ-002 | LED channel current range 0–450 mA | Performance | approved | — |
| REQ-003 | LED current control resolution 16-bit | Performance | approved | — |
| REQ-004 | LED current measurement 24-bit ADC | Performance | approved | — |
| REQ-005 | LED channel settling time documented | Performance | approved | — |
| REQ-006 | 2 independently controllable light-table voltage channels | Functional | approved | — |
| REQ-007 | Light-table regulation 0–24 V at up to 1.5 A | Performance | approved | — |
| REQ-008 | Light-table voltage resolution 12-bit | Performance | approved | — |
| REQ-009 | Switched on/off control of external PSU | Functional | approved | — |
| REQ-010 | C# and Python API over USB | Interface | approved | — |
| REQ-011 | Powered from USB PD 20 V / 100 W | Interface | approved | — |
| REQ-012 | Hammond 1455N1201BK enclosure | Mechanical | approved | — |
| REQ-013 | Phoenix Contact push-in external connectors | Mechanical | approved | — |
| REQ-014 | Unique serial number label | Mechanical | approved | — |
| REQ-015 | Internal temp ≤ 50 °C at full load, 23 °C ambient | Environmental | approved | — |
| REQ-016 | IR-LED load compatibility | Functional | approved | — |
| REQ-017 | Active cooling (fan) | Mechanical | approved | — |
| REQ-018 | Physical power on/off button | Mechanical | approved | — |
| REQ-019 | Clamp voltage 5 V; dissipation ≤ 0.79 W/ch, ≤ 6.3 W total | Performance | approved | — |
| REQ-020 | Light-table current limit 0–1.5 A, 12-bit | Performance | approved | — |
| REQ-021 | 2-point calibration of all 8 LED channels | Functional | approved | — |
| REQ-022 | 2-point calibration of both light-table channels | Functional | approved | — |
| REQ-023 | Calibration coefficients in NVM, applied at power-on | Functional | approved | — |
| REQ-024 | Post-calibration accuracy | Performance | approved | — |
| REQ-025 | All status LEDs software-controllable, toggle-off via API | Functional | approved | — |
| REQ-026 | Per-channel ADC current readback functional on all 8 channels | Design | approved | — |
Trace Link Graph
■ Done ■ Partial ■ Not started ■ No test case
Verification Records
No verification records.
Decisions
Decision
The Collimator LED Control Box includes four mechanical panels, each with its own ESH part number. They are tracked under this project (ESH10000672 R1) and are NOT set up as standalone Trace projects.
| Panel | ESH |
|---|---|
| Back Panel | ESH10000608 |
| Front Panel | ESH10000609 |
| Top Panel Current Source | ESH10000681 |
| Front Panel PSU | ESH10000683 |
Scope / dates
- Panel tape-out: 2026-06-26 (milestone MS-006).
- Panels mount into the Hammond 1455N1201BK enclosure (REQ-012) with Phoenix Contact push-in I/O (REQ-013) and the physical power button (REQ-018).
Decision
Verification of the Collimator LED Control Box uses a two-level test solution:
- Unit level — a dedicated test board that tests the assembled unit. Tracked inside ESH10000672 (not a separate Trace project); ESH number / revision TBD.
- Module level — the Accordion Module Tester, ESH10000518 R1 (existing Trace project, id 49). This is a general-purpose Accordion module tester used across many products — not linked as a 672-specific dependency.
Why
The unit is a multi-module stack; faults must be isolable both at the integrated-unit level and per-module before integration.
Follow-up (action)
- Define the unit-level test board within 672 (assign ESH number, scope requirements, add to timeline).
- Fold both test levels into the 672 verification plan / DVT milestones.
Notices
Requirement REQ-001 ("8 independently controllable LED current channels") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-002 ("LED channel current range 0–450 mA") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-003 ("LED current control resolution 16-bit") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-004 ("LED current measurement 24-bit ADC") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-005 ("LED channel settling time documented") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-006 ("2 independently controllable light-table voltage channels") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-007 ("Light-table regulation 0–24 V at up to 1.5 A") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-008 ("Light-table voltage resolution 12-bit") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-009 ("Switched on/off control of external PSU") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-010 ("C# and Python API over USB") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-011 ("Powered from USB PD 20 V / 100 W") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-012 ("Hammond 1455N1201BK enclosure") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-013 ("Phoenix Contact push-in external connectors") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-014 ("Unique serial number label") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-015 ("Internal temp ≤ 50 °C at full load, 23 °C ambient") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-016 ("IR-LED load compatibility") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-017 ("Active cooling (fan)") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-018 ("Physical power on/off button") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-019 ("Clamp voltage 5 V; dissipation ≤ 0.79 W/ch, ≤ 6.3 W total") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-020 ("Light-table current limit 0–1.5 A, 12-bit") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-021 ("2-point calibration of all 8 LED channels") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-022 ("2-point calibration of both light-table channels") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-023 ("Calibration coefficients in NVM, applied at power-on") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-024 ("Post-calibration accuracy") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-025 ("All status LEDs software-controllable, toggle-off via API") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Requirement REQ-026 ("Per-channel ADC current readback functional on all 8 channels") has no verifying test case. Add one with trace_testcase_create and link it (verified_by).
Design Rule Status
■ No violations ■ Warning ■ Error ■ Waived
Sign-offs
| Stage | Role | Signed By | Date | Statement |
|---|---|---|---|---|
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |
| approved | engineer | demo | 2026-06-23 | — |