0
mirror of https://github.com/incutec-hw/OpenESC_20X20.git synced 2026-08-08 13:54:36 +00:00
Files
JustStan d1614eee5c Fix contradictions and duplicated information
Contradictions, resolved against the design files:
- GitHub repo description corrected to KiCad 10 and 6S (schematic/PCB carry
  generator_version 10.0; DOC_INPUT is "+BATT 6S", no 3S floor is documented).
- DOC_NAME text variable now "OpenESC-20x20", matching the repo rename, so the
  old slug stops leaking into title blocks and fabrication exports.
- 20x20-ESC-QC/README.md no longer claims project-local libraries only: 44 of
  the 45 fixture footprints come from KiCad's stock TestPoint library. Also
  records that the fixture schematic is a stub, so the one ESC-QC symbol is
  unused.
- esc_thermal.py header and 20x20 profile name state that SP40N03GNJ is a
  superseded power stage and its numbers do not describe the shipping board
  (24x DOY180N03T). Parameters left untouched, re-parameterization needs the
  DOY180N03T datasheet.
- *.kicad_dru removed from .gitignore: hardware/4in1-mini.kicad_dru is a
  hand-authored DRC rule, a design input, not generated output.
- The "3D exports" ignore rule was malformed (**/.step matched nothing). Now
  hardware/*.step and 20x20-ESC-QC/*.step, which leaves the *.3dshapes/
  library assets tracked.

Duplication, each fact kept in one place:
- README specification table dropped, the full table lives in DESIGN.md.
- Production-export and flash-script statements kept in README Manufacturing;
  the layout rows and DESIGN.md now link there.
- licensing/README.md removed, its one unique sentence moved into the README
  license section. THIRD_PARTY.md and TRADEMARKS.md keep the real content.

Removed:
- hardware/datasheets/COMPONENT_REVIEW.md, a v0.3 audit describing a power
  stage, current sense and regulator that are not in the design files.
- hardware/scripts/v_beta_hygiene_fix.py, an applied migration whose target
  file and all three source strings no longer exist, and which byte-edits
  .kicad_sch against CONTRIBUTING.
- hardware/4in1-mini.step (18.3 MB) and 20x20-ESC-QC/QC-20x20-PCB.step,
  regenerable board exports now correctly gitignored.
- 20x20-ESC-QC/ESC-QC.pretty/.gitkeep, the directory holds a real footprint.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-06 10:50:09 +02:00

2.0 KiB

20x20-ESC-QC: press-contact QC fixture

Bench test/QC jig for the OpenESC-20x20 (../hardware/4in1-mini). The assembled ESC is pressed face-down onto this board so spring/pogo contacts land on the ESC's exposed pads (power in, three phases per channel, signal lines) to run functional and current-transfer tests without soldering leads.

Concept: this board is a negative of the ESC contact face. The ESC nests into a milled/offset pocket for alignment, and contact features sit under each of its exposed pads.

Layout / conventions (mirrors the parent repo)

  • KiCad 10 project: 20x20-ESC-QC.kicad_{pro,sch,pcb}. The schematic is an empty stub: the fixture is laid out directly on the board, with no netlist.
  • Project-local libraries, declared in sym-lib-table and fp-lib-table:
    • Symbols: ESC-QC.kicad_sym (one symbol, 4in1ESC-negative, currently unused because the schematic is a stub)
    • Footprints: ESC-QC.pretty/ (one footprint, 4in1ESC-negative: 34 pads plus the Edge.Cuts geometry of the ESC contact face)
    • 3D models: ESC-QC.3dshapes/ (empty)
  • The 44 contact pads come from KiCad's stock global TestPoint library (TestPoint_Pad_2.0x2.0mm, 3.0x3.0mm, 4.0x4.0mm), not from a project-local library. Nothing else resolves globally.
  • License: hardware CERN-OHL-S-2.0 (same as parent).

Reference geometry

The contact locations must match the ESC's exposed pads exactly. Pad coordinates and nets are extracted read-only from the source board, ../hardware/4in1-mini.kicad_pcb (kicad-cli or the pcbnew API); nothing in the ESC design is modified.

Contacts to hit (from the ESC design)

  • +BATT / GND: high-current, the press-contact points that matter most.
  • Motor phases: 3 per channel x 4 channels (A/B/C) motor output pads.
  • Signal: 4 DShot lines (/M1-/M4) plus +BATT, GND, and /CURR on J1 (SM08B-SRSS-TB), or its pad footprint if contacting the pads directly.
  • Optional: SWD/boot test pads for the AT32F421 per channel.