Goldfish files
Everything a builder or an implementer needs, published with the workbench.
To build the kit, start with Assembly. To adopt the protocol, start with the protocol overview.
The device firmware is not written yet: the kit boots Linux and runs the protocol tests today.
Download the source (zip, 1.2 MB) ↓The print files are a separate zip on the workbench's Print tab.
Build the kit
- v01 kit overview v01/README.md
- Assembly: who it is for, tools, LiPo safety, steps, bring-up checks v01/assembly.md
- Wiring, pad level v01/wiring.md
- Bill of materials (every part, buy links) v01/bom.csv
- Goldfish profile (the device's settings, as an RP profile) v01/profile/goldfish.profile.json
Resolution Protocol
- Protocol overview and quick start protocol/README.md
- Specification (RP 0.2 draft) protocol/SPEC.md
- Prior art protocol/research/prior-art.md
- Reference implementation, JavaScript protocol/js/resolution.js
- Conformance runner, JavaScript protocol/js/conformance.js
- English grammar protocol/locales/en.json
- Spanish grammar (draft) protocol/locales/es.json
- Session vectors protocol/vectors/sessions.json
- Phrase vectors, English protocol/vectors/phrases.en.json
- Retention vectors protocol/vectors/retention.json
- Profile vectors protocol/vectors/profiles.json
- Profile schema protocol/schemas/profile.schema.json
- Locale schema protocol/schemas/locale.schema.json
- Event schema protocol/schemas/event.schema.json
Decisions and plans
- Roadmap ROADMAP.md
- Backlog BACKLOG.md
- Code architecture 03-architecture/code.md
- ADR-0001: No wireless radio in v1 03-architecture/decisions/0001-no-radio.md
- ADR-0002: Retention enforced by destroying per-session keys 03-architecture/decisions/0002-retention-by-crypto-shredding.md
- ADR-0003: People set resolution by talking to the device 03-architecture/decisions/0003-voice-in-plain-english.md
- ADR-0004: Memory is reached only by physically handling the device 03-architecture/decisions/0004-physical-access-only.md
- ADR-0005: Forgetting by tiers — distil every rung up front, then destroy keys on schedule 03-architecture/decisions/0005-forgetting-by-tiers.md
- ADR-0006: The device answers with light, never with sound 03-architecture/decisions/0006-light-language.md
- ADR-0007: Hand-off to a phone through a passive NFC tag 03-architecture/decisions/0007-passive-nfc-handoff.md
- ADR-0008: Resolution per participant, not per device 03-architecture/decisions/0008-per-participant-resolution.md
- ADR-0009: A light ring at the seam, one light in the eye 03-architecture/decisions/0009-flank-lights.md
- ADR-0010: Each voice gains an identity and owns its record 03-architecture/decisions/0010-each-voice-owns-its-record.md
- ADR-0011: Resolution Protocol and the Goldfish profile 03-architecture/decisions/0011-protocol-and-profile.md
- ADR-0012: Resolution Protocol 0.2 — provisional raises, a smaller core, adoption hooks 03-architecture/decisions/0012-rp-0-2.md
- ADR-0013: The eye is a button; the room-off glow; a kit with no surface-mount soldering 03-architecture/decisions/0013-eye-button-and-kit-build.md
Licences
- Which licence covers what LICENSE
- Apache 2.0 (code) LICENSES/Apache-2.0.txt
- CERN-OHL-P v2 (hardware design files) LICENSES/CERN-OHL-P-2.0.txt
- CC BY 4.0 (specification, docs, data) LICENSES/CC-BY-4.0.txt
Licences:
- code: Apache-2.0;
- hardware design files: CERN-OHL-P-2.0;
- specification, documentation and data: CC BY 4.0.