This repository holds planning, design documentation, and (eventually) the manuscript for the Spatial Foraging Platform. It does not hold hardware design files, firmware, host software, or analysis code.
Firmware, the base-station GUI, and analysis live in Neurotech-Hub/SFM:
firmware/— Arduino librarySFM(ESP32-S3-MINI-1)packages/dev_gui/— Raspberry Pi developer GUI and CAN toolingpackages/sfm-analysis/— cross-platform analysis SDK (pip install sfm-analysis)
CAD and PCB repos, when they exist, are linked from the README.
- The master plan:
PROJECT.md. - Live design documents:
docs/. - Meeting notes:
meetings/. - Budget tracking and BOM summaries:
bom/. - Source/reference PDFs:
references/. - Manuscript drafts (Phase 8+):
manuscript/.
- CAD, STEP, STL, or other mechanical design files.
- Schematics, board layouts, gerbers.
- Firmware, host software, or analysis source code.
- Large datasets or recordings.
If an artifact does not belong here, link to it from the relevant doc and update the Related repositories table in the README.
- Documentation files: lowercase kebab-case,
.mdextension. Example:sync-and-recording.md. - Meeting notes:
YYYY-MM-DD-short-topic.md. Example:2026-06-14-architecture-kickoff.md. - ADRs:
NNNN-short-title.mdwhereNNNNis the next available zero-padded sequence number. Example:0007-can-bus-topology.md.
- Create a feature branch off
main. Branch name should reflect the change, e.g.docs/architecture-can-bus,adr/0007-can-bus-topology,meetings/2026-06-14-architecture-kickoff. - Make your change. Keep PRs focused on a single document or a single phase when possible.
- Open a pull request. The phase lead listed in
PROJECT.mdfor the phase your change touches is the default reviewer; the NTH engineering lead is the catch-all reviewer. - Squash-merge once approved.
- Tick boxes in
PROJECT.mdas goals and exit criteria are met. Each tick should be backed by either a committed doc, a linked artifact, or an ADR. - When a phase or gate is crossed, update the Current status table in both
README.mdandPROJECT.md.
After cross-lab meetings, drop a note in meetings/ using
meetings/TEMPLATE.md. Capture decisions and action
items at minimum; full transcripts are not required.
- Plain GitHub-flavored Markdown.
- Hard-wrap prose at ~80 columns where reasonable, but do not break tables or links.
- Prefer relative links between files in this repo so navigation works on both github.com and locally.
- Diagrams use Mermaid where possible so they render natively on GitHub.
By contributing, you agree your contributions to this repository are released under CC-BY-4.0.