feat(hw): add v2.9 placeholders
Add placeholder directory structure for PCB v2.9 hardware revision: - hardware/v2.9/ with altium, bom, easyeda, manufacturing, parsed_data - README placeholders describing expected contents and open decisions - v2.9 placeholder entry in savearth_hw_knowledge.json (component_count: 0, empty components, evolution diff from v2.8) Links to docs/v2.9_mitigation_plan.md for architecture details.
This commit is contained in:
parent
c8b6629cff
commit
c992fe69c9
14 changed files with 480 additions and 347 deletions
File diff suppressed because it is too large
Load diff
0
hardware/v2.9/.gitkeep
Normal file
0
hardware/v2.9/.gitkeep
Normal file
61
hardware/v2.9/README.md
Normal file
61
hardware/v2.9/README.md
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
# Savearth PCB v2.9 — Placeholder
|
||||
|
||||
This directory is a placeholder for the upcoming **PCB v2.9** hardware revision.
|
||||
|
||||
## Purpose
|
||||
|
||||
PCB v2.9 addresses the architectural flaws identified in v2.7 and v2.8:
|
||||
|
||||
| Issue | v2.7 | v2.8 | v2.9 Target |
|
||||
|-------|------|------|-------------|
|
||||
| Reed switch pin | `GPIO43` (TX0) | PCAL9538A P5 | Dedicated RTC GPIO |
|
||||
| Deep-sleep wake | Yes (with UART conflict) | No | Yes via `EXT1` |
|
||||
| Hard reset | Cut regulator power | None (always-on) | Supervisor IC / delay circuit |
|
||||
| Factory flashing | Blocked by reed switch | Tweezers on CON header | On-board BOOT + RESET tactile buttons |
|
||||
|
||||
## Required Architectural Changes
|
||||
|
||||
1. **Reed Switch → RTC GPIO**
|
||||
- Move the reed switch from the PCAL9538A I/O expander to a dedicated, non-strapping RTC GPIO on the ESP32-S3.
|
||||
- Candidate pins: `GPIO4`, `GPIO5`, or another RTC-capable pin that does not conflict with boot strapping (`GPIO0`, `GPIO3`, `GPIO45`, `GPIO46`).
|
||||
|
||||
2. **Hardware Hard-Reset Circuit**
|
||||
- Long magnet hold (> 10 s) must unconditionally pull `CHIP_PU` (`EN`) LOW.
|
||||
- Options under evaluation:
|
||||
- Dedicated supervisor IC (e.g., LTC2950, MAX16054, TPS3420).
|
||||
- Passive RC delay + MOSFET / comparator.
|
||||
|
||||
3. **Soft-Latch Power Circuit (optional / TBD)**
|
||||
- Replace the always-on `EN`-to-`VSYS` connection with a soft-latch that the firmware can release for true zero-power shutdown.
|
||||
- Requires a `POWER_HOLD` GPIO available immediately at boot.
|
||||
|
||||
4. **Tactile Buttons**
|
||||
- Add `RESET` button: `CHIP_PU` → GND (100 nF debounce).
|
||||
- Add `BOOT` button: `GPIO0` → GND (100 nF debounce).
|
||||
|
||||
## Directory Layout
|
||||
|
||||
```
|
||||
hardware/v2.9/
|
||||
├── altium/ # Altium Designer project placeholders
|
||||
├── bom/ # Bill of Materials placeholders
|
||||
├── easyeda/ # EasyEDA Professional project placeholders
|
||||
├── manufacturing/ # Gerber, pick-and-place, 3D STEP placeholders
|
||||
└── parsed_data/ # Extracted schematic/BOM/netlist placeholders
|
||||
```
|
||||
|
||||
## Open Decisions
|
||||
|
||||
- [ ] RTC GPIO selection for reed switch.
|
||||
- [ ] Supervisor IC vs. passive RC for hard reset.
|
||||
- [ ] `POWER_HOLD` GPIO selection (if soft-latch is implemented).
|
||||
- [ ] Boot/reset button footprint and enclosure cutout strategy.
|
||||
- [ ] BOM cost target and budget for added components.
|
||||
- [ ] PIR noise: hardware RC filter required or firmware-only debounce?
|
||||
|
||||
## Related Documents
|
||||
|
||||
- [`docs/v2.9_mitigation_plan.md`](/docs/v2.9_mitigation_plan.md)
|
||||
- [`docs/hw_meeting_v28_v29_agenda.md`](/docs/hw_meeting_v28_v29_agenda.md)
|
||||
- [`docs/v2.8_hardware_analysis_and_fixes.md`](/docs/v2.8_hardware_analysis_and_fixes.md)
|
||||
- Jira: HW-52, HW-55, HW-56, HW-57, HW-58
|
||||
0
hardware/v2.9/altium/.gitkeep
Normal file
0
hardware/v2.9/altium/.gitkeep
Normal file
10
hardware/v2.9/altium/README.md
Normal file
10
hardware/v2.9/altium/README.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# Altium Project Placeholder — PCB v2.9
|
||||
|
||||
This directory will hold the Altium Designer project files for PCB v2.9.
|
||||
|
||||
Expected files:
|
||||
|
||||
- `Savearth_v2_9.PrjPcb` — Altium project file.
|
||||
- `Savearth_v2_9.pcbdoc` — PCB layout.
|
||||
- `Savearth_v2_9/1_Savearth SCH ESP32 v2_9.schdoc` — ESP32/MCU schematic.
|
||||
- `Savearth_v2_9/2_Savearth SCH Power v2_9.schdoc` — Power management schematic.
|
||||
0
hardware/v2.9/altium/Savearth_v2_9/.gitkeep
Normal file
0
hardware/v2.9/altium/Savearth_v2_9/.gitkeep
Normal file
0
hardware/v2.9/bom/.gitkeep
Normal file
0
hardware/v2.9/bom/.gitkeep
Normal file
19
hardware/v2.9/bom/README.md
Normal file
19
hardware/v2.9/bom/README.md
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
# BOM Placeholder — PCB v2.9
|
||||
|
||||
This directory will contain the v2.9 bill of materials once the schematic is finalized.
|
||||
|
||||
Expected files:
|
||||
|
||||
- `bom_v2_9.json` — Structured BOM extracted from the CAD tool.
|
||||
- `bom_v2_9_jlcpcb.csv` — JLCPCB-compatible BOM for assembly quoting.
|
||||
|
||||
## TBD Components
|
||||
|
||||
The v2.9 BOM is expected to add one or more of the following, depending on the architecture decisions:
|
||||
|
||||
- Reset / push-button supervisor IC (or RC delay components).
|
||||
- P-MOSFET + N-MOSFET + passives for soft-latch power (if implemented).
|
||||
- Two SMD tactile switches (BOOT, RESET) with debounce capacitors.
|
||||
- Optional PIR output RC filter components.
|
||||
|
||||
Until the schematic is ready, this directory intentionally contains only this placeholder.
|
||||
0
hardware/v2.9/easyeda/.gitkeep
Normal file
0
hardware/v2.9/easyeda/.gitkeep
Normal file
12
hardware/v2.9/easyeda/README.md
Normal file
12
hardware/v2.9/easyeda/README.md
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
# EasyEDA Project Placeholder — PCB v2.9
|
||||
|
||||
This directory will hold the EasyEDA Professional project files for PCB v2.9.
|
||||
|
||||
Expected files:
|
||||
|
||||
- `Savearth_v2_9.epro` — Top-level EasyEDA project.
|
||||
- `Savearth SCH ESP32 v2_9.epro` — ESP32/MCU subsystem schematic.
|
||||
- `Savearth SCH Power v2_9.epro` — Power management subsystem schematic.
|
||||
- `Savearth GBT.eprj` — Optional local library/project archive.
|
||||
|
||||
The v2.9 schematic will implement the mitigations documented in `docs/v2.9_mitigation_plan.md`.
|
||||
0
hardware/v2.9/manufacturing/.gitkeep
Normal file
0
hardware/v2.9/manufacturing/.gitkeep
Normal file
10
hardware/v2.9/manufacturing/README.md
Normal file
10
hardware/v2.9/manufacturing/README.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# Manufacturing Outputs Placeholder — PCB v2.9
|
||||
|
||||
This directory will contain the manufacturing deliverables for PCB v2.9 once the layout is complete.
|
||||
|
||||
Expected files:
|
||||
|
||||
- `Gerber_Savearth_v2_9_YYYY-MM-DD.zip` — Gerber RS-274X outputs.
|
||||
- `PickAndPlace_Savearth_v2_9_YYYY-MM-DD.xlsx` — Centroid / pick-and-place file.
|
||||
- `BOM_Savearth_v2_9_YYYY-MM-DD.xlsx` — Manufacturing BOM.
|
||||
- `3D_Savearth_v2_9_YYYY-MM-DD.step` — 3D mechanical model.
|
||||
0
hardware/v2.9/parsed_data/.gitkeep
Normal file
0
hardware/v2.9/parsed_data/.gitkeep
Normal file
9
hardware/v2.9/parsed_data/README.md
Normal file
9
hardware/v2.9/parsed_data/README.md
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Parsed Data Placeholder — PCB v2.9
|
||||
|
||||
This directory will contain extracted/scraped data from the v2.9 CAD sources for automated analysis.
|
||||
|
||||
Expected files:
|
||||
|
||||
- `schematic_raw.json` — Raw component/nets extracted from the schematic.
|
||||
- `bom_extended.json` — Enriched BOM with supplier data.
|
||||
- `netlist.json` — Connectivity netlist for automated checks.
|
||||
Loading…
Reference in a new issue