{
 "schemaVersion": 1,
 "slug": "odiin",
 "name": "Odiin",
 "maker": "chris marc dailey (cmdwtf)",
 "category": "rfid",
 "capabilities": [
  "hf",
  "ble"
 ],
 "chips": [
  "nrf52840",
  "ili934x"
 ],
 "page": "https://gadgets.sh/diy/odiin/",
 "cataloguePage": "https://gadgets.sh/devices/odiin/",
 "checked": "2026-09-27",
 "state": "partial",
 "stateLabel": "Partial build sources",
 "sourceType": "maker-published",
 "revision": null,
 "reproduction": {
  "status": "not-tested",
  "note": "We have not built and tested a reproduction from these files."
 },
 "hardwareLicense": null,
 "evidence": [
  {
   "key": "schematic",
   "label": "Editable schematic",
   "status": "present",
   "fileIds": [
    "cmdwtf/Biifrost/Biifröst.sch"
   ],
   "note": "Published source present; inspect revision and completeness before building."
  },
  {
   "key": "pcb",
   "label": "Editable PCB",
   "status": "present",
   "fileIds": [
    "cmdwtf/Biifrost/Biifröst.kicad_pcb"
   ],
   "note": "Published source present; inspect revision and completeness before building."
  },
  {
   "key": "bom",
   "label": "Bill of materials",
   "status": "present",
   "fileIds": [
    "cmdwtf/Odiin/.hardware/Prototype/README.md"
   ],
   "note": "Published source present; inspect revision and completeness before building."
  },
  {
   "key": "gerbers",
   "label": "Fabrication files",
   "status": "not-found",
   "fileIds": [],
   "note": "Ready-to-manufacture Gerbers and drill files have not been verified."
  },
  {
   "key": "enclosure",
   "label": "Enclosure",
   "status": "not-found",
   "fileIds": [],
   "note": "A complete matching enclosure design has not been verified."
  },
  {
   "key": "firmware",
   "label": "Firmware source",
   "status": "present",
   "fileIds": [
    "https://github.com/cmdwtf/Odiin"
   ],
   "note": "Published source present; inspect revision and completeness before building."
  },
  {
   "key": "instructions",
   "label": "Build instructions",
   "status": "not-found",
   "fileIds": [],
   "note": "Assembly and test instructions have not been reviewed."
  }
 ],
 "missing": [
  {
   "key": "gerbers",
   "note": "Ready-to-manufacture Gerbers and drill files have not been verified."
  },
  {
   "key": "enclosure",
   "note": "A complete matching enclosure design has not been verified."
  },
  {
   "key": "instructions",
   "note": "Assembly and test instructions have not been reviewed."
  },
  {
   "key": "license",
   "note": "Hardware-specific licence scope has not been reviewed. A firmware or repository licence alone does not establish it."
  },
  {
   "key": "revision",
   "note": "Compatibility between board, enclosure and firmware revisions has not been reviewed."
  }
 ],
 "files": [
  {
   "id": "cmdwtf/Biifrost/Biifröst.sch",
   "path": "Biifröst.sch",
   "label": "Biifröst bridge PCB schematic (KiCad)",
   "kind": "schematic",
   "format": "Eagle/KiCad",
   "source": "https://github.com/cmdwtf/Biifrost/blob/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/Biifr%C3%B6st.sch",
   "download": "https://raw.githubusercontent.com/cmdwtf/Biifrost/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/Biifr%C3%B6st.sch",
   "repository": "https://github.com/cmdwtf/Biifrost",
   "revision": "ea1cf455e8226365ee74e8f05eb67e394c3c9cf7",
   "bytes": 14858,
   "gitBlobSha1": "6db36f5edeb35b36a6ebb1754d8be57290313246",
   "licenseFiles": [
    "https://github.com/cmdwtf/Biifrost/blob/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/LICENSE.md"
   ]
  },
  {
   "id": "cmdwtf/Biifrost/Biifröst.kicad_pcb",
   "path": "Biifröst.kicad_pcb",
   "label": "Biifröst bridge PCB layout (KiCad)",
   "kind": "pcb",
   "format": "KiCad",
   "source": "https://github.com/cmdwtf/Biifrost/blob/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/Biifr%C3%B6st.kicad_pcb",
   "download": "https://raw.githubusercontent.com/cmdwtf/Biifrost/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/Biifr%C3%B6st.kicad_pcb",
   "repository": "https://github.com/cmdwtf/Biifrost",
   "revision": "ea1cf455e8226365ee74e8f05eb67e394c3c9cf7",
   "bytes": 249613,
   "gitBlobSha1": "b16a2b0cb9a60d3486a9166883aebe1e8d7dcab3",
   "licenseFiles": [
    "https://github.com/cmdwtf/Biifrost/blob/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/LICENSE.md"
   ]
  },
  {
   "id": "cmdwtf/Odiin/.hardware/Prototype/README.md",
   "path": ".hardware/Prototype/README.md",
   "label": "Prototype bill of materials (README table)",
   "kind": "bom",
   "format": "HTML",
   "source": "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/.hardware/Prototype/README.md",
   "download": "https://raw.githubusercontent.com/cmdwtf/Odiin/d6d8843f28e78446d1966f21096d5ed8ab0671c2/.hardware/Prototype/README.md",
   "repository": "https://github.com/cmdwtf/Odiin",
   "revision": "d6d8843f28e78446d1966f21096d5ed8ab0671c2",
   "bytes": 4167,
   "gitBlobSha1": "12315fc4a00dcf4c621afc0b0e8a43372cf4a4b2",
   "licenseFiles": [
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/LICENSE"
   ]
  },
  {
   "id": "cmdwtf/Odiin/.hardware/Prototype/bottom.stl",
   "path": ".hardware/Prototype/bottom.stl",
   "label": "bottom",
   "kind": "model",
   "format": "STL",
   "source": "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/.hardware/Prototype/bottom.stl",
   "download": "https://raw.githubusercontent.com/cmdwtf/Odiin/d6d8843f28e78446d1966f21096d5ed8ab0671c2/.hardware/Prototype/bottom.stl",
   "repository": "https://github.com/cmdwtf/Odiin",
   "revision": "d6d8843f28e78446d1966f21096d5ed8ab0671c2",
   "bytes": 480384,
   "gitBlobSha1": "bae88a94ea14013f813b155e09f8d3add624090d",
   "licenseFiles": [
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/LICENSE"
   ]
  },
  {
   "id": "cmdwtf/Odiin/.hardware/Prototype/cap.stl",
   "path": ".hardware/Prototype/cap.stl",
   "label": "cap",
   "kind": "model",
   "format": "STL",
   "source": "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/.hardware/Prototype/cap.stl",
   "download": "https://raw.githubusercontent.com/cmdwtf/Odiin/d6d8843f28e78446d1966f21096d5ed8ab0671c2/.hardware/Prototype/cap.stl",
   "repository": "https://github.com/cmdwtf/Odiin",
   "revision": "d6d8843f28e78446d1966f21096d5ed8ab0671c2",
   "bytes": 144884,
   "gitBlobSha1": "50c8e6398277df331f60f2e42d0c0c0e9167b15e",
   "licenseFiles": [
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/LICENSE"
   ]
  },
  {
   "id": "cmdwtf/Odiin/.hardware/Prototype/top.stl",
   "path": ".hardware/Prototype/top.stl",
   "label": "top",
   "kind": "model",
   "format": "STL",
   "source": "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/.hardware/Prototype/top.stl",
   "download": "https://raw.githubusercontent.com/cmdwtf/Odiin/d6d8843f28e78446d1966f21096d5ed8ab0671c2/.hardware/Prototype/top.stl",
   "repository": "https://github.com/cmdwtf/Odiin",
   "revision": "d6d8843f28e78446d1966f21096d5ed8ab0671c2",
   "bytes": 427884,
   "gitBlobSha1": "b1b41ff6eebe7e740c80e9d6e9346564a21fbae7",
   "licenseFiles": [
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/LICENSE"
   ]
  },
  {
   "id": "cmdwtf/Odiin/LICENSE",
   "path": "LICENSE",
   "label": "LICENSE",
   "kind": "license",
   "format": "LICENSE",
   "source": "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/LICENSE",
   "download": "https://raw.githubusercontent.com/cmdwtf/Odiin/d6d8843f28e78446d1966f21096d5ed8ab0671c2/LICENSE",
   "repository": "https://github.com/cmdwtf/Odiin",
   "revision": "d6d8843f28e78446d1966f21096d5ed8ab0671c2",
   "bytes": 672,
   "gitBlobSha1": "6bc5e13fc62c02d620c8aabf5ad5df4085e4eb99",
   "licenseFiles": [
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/LICENSE"
   ]
  },
  {
   "id": "cmdwtf/Biifrost/LICENSE.md",
   "path": "LICENSE.md",
   "label": "LICENSE.md",
   "kind": "license",
   "format": "MD",
   "source": "https://github.com/cmdwtf/Biifrost/blob/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/LICENSE.md",
   "download": "https://raw.githubusercontent.com/cmdwtf/Biifrost/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/LICENSE.md",
   "repository": "https://github.com/cmdwtf/Biifrost",
   "revision": "ea1cf455e8226365ee74e8f05eb67e394c3c9cf7",
   "bytes": 4630,
   "gitBlobSha1": "96b64fd2d1162385ea58a8ea79ce541452d7d256",
   "licenseFiles": [
    "https://github.com/cmdwtf/Biifrost/blob/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/LICENSE.md"
   ]
  },
  {
   "id": "https://github.com/cmdwtf/Odiin/tree/main/.hardware/Prototype",
   "label": "Odiin prototype case (top/bottom/cap STL)",
   "kind": "other",
   "format": "STL",
   "source": "https://github.com/cmdwtf/Odiin/tree/main/.hardware/Prototype",
   "download": null,
   "repository": "https://github.com/cmdwtf/Odiin",
   "revision": null,
   "bytes": null,
   "gitBlobSha1": null,
   "licenseFiles": []
  }
 ],
 "repositories": [
  {
   "url": "https://github.com/cmdwtf/Odiin",
   "role": "firmware",
   "official": true,
   "commit": "d6d8843f28e78446d1966f21096d5ed8ab0671c2",
   "branch": "main",
   "checked": "2026-09-30",
   "archive": "https://github.com/cmdwtf/Odiin/archive/d6d8843f28e78446d1966f21096d5ed8ab0671c2.zip",
   "repositoryLicense": "0BSD",
   "licenseFiles": [
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/LICENSE",
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/vendor/amiitool/LICENSE",
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/vendor/board/LICENSE",
    "https://github.com/cmdwtf/Odiin/blob/d6d8843f28e78446d1966f21096d5ed8ab0671c2/vendor/fatfs/LICENSE.txt"
   ],
   "submodules": [
    {
     "path": ".hardware/Biifrost",
     "commit": "b633f8cc04dcb1336d00c380a91cbbddcf0b03c5"
    },
    {
     "path": "bootloader",
     "commit": "23e6539e396637166b5397a43e4f3d70a251fa7c"
    },
    {
     "path": "vendor/Cie1931",
     "commit": "9139a6c71e5eb7a10ac6e2a129dcd5a4ff3832ad"
    },
    {
     "path": "vendor/TinyFSM",
     "commit": "06f27072266d6c34d990f910c4c43fb11240501c"
    },
    {
     "path": "vendor/cwalk",
     "commit": "d2e520ca36a92196e60de1eeb29cc61ef77d4ab5"
    },
    {
     "path": "vendor/littlefs",
     "commit": "4c9146ea539f72749d6cc3ea076372a81b12cb11"
    },
    {
     "path": "vendor/lvgl/lvgl",
     "commit": "9b9cd36dc9f43e05bd4ed064c34e0540780fd462"
    },
    {
     "path": "vendor/nRF5_SDK",
     "commit": "8780ad9847ddb66089b7e8647e409242f88ac142"
    }
   ],
   "inventoryNote": "Design files, source-application project files, CAD libraries, docs, BOMs and firmware images; full source code is in the repository archive."
  },
  {
   "url": "https://github.com/cmdwtf/Biifrost",
   "role": "hardware",
   "official": true,
   "commit": "ea1cf455e8226365ee74e8f05eb67e394c3c9cf7",
   "branch": "main",
   "checked": "2026-09-30",
   "archive": "https://github.com/cmdwtf/Biifrost/archive/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7.zip",
   "repositoryLicense": null,
   "licenseFiles": [
    "https://github.com/cmdwtf/Biifrost/blob/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7/LICENSE.md"
   ],
   "submodules": [],
   "inventoryNote": "Design files, source-application project files, CAD libraries, docs, BOMs and firmware images; full source code is in the repository archive."
  }
 ],
 "selection": "Catalogue-linked files and nearby design dependencies. The paths may cover multiple revisions; compatibility has not been established.",
 "reviewed": null,
 "notes": [],
 "counts": {
  "files": 9,
  "downloadable": 8,
  "pinned": 8,
  "repositories": 2
 },
 "downloads": {
  "manifest": "https://gadgets.sh/diy/odiin/manifest.json",
  "brief": "https://gadgets.sh/diy/odiin/build-brief.md",
  "pack": null,
  "archives": [
   {
    "repository": "https://github.com/cmdwtf/Odiin",
    "revision": "d6d8843f28e78446d1966f21096d5ed8ab0671c2",
    "url": "https://github.com/cmdwtf/Odiin/archive/d6d8843f28e78446d1966f21096d5ed8ab0671c2.zip",
    "includes": "Full repository snapshot; may include other device revisions.",
    "submodules": [
     {
      "path": ".hardware/Biifrost",
      "commit": "b633f8cc04dcb1336d00c380a91cbbddcf0b03c5"
     },
     {
      "path": "bootloader",
      "commit": "23e6539e396637166b5397a43e4f3d70a251fa7c"
     },
     {
      "path": "vendor/Cie1931",
      "commit": "9139a6c71e5eb7a10ac6e2a129dcd5a4ff3832ad"
     },
     {
      "path": "vendor/TinyFSM",
      "commit": "06f27072266d6c34d990f910c4c43fb11240501c"
     },
     {
      "path": "vendor/cwalk",
      "commit": "d2e520ca36a92196e60de1eeb29cc61ef77d4ab5"
     },
     {
      "path": "vendor/littlefs",
      "commit": "4c9146ea539f72749d6cc3ea076372a81b12cb11"
     },
     {
      "path": "vendor/lvgl/lvgl",
      "commit": "9b9cd36dc9f43e05bd4ed064c34e0540780fd462"
     },
     {
      "path": "vendor/nRF5_SDK",
      "commit": "8780ad9847ddb66089b7e8647e409242f88ac142"
     }
    ]
   },
   {
    "repository": "https://github.com/cmdwtf/Biifrost",
    "revision": "ea1cf455e8226365ee74e8f05eb67e394c3c9cf7",
    "url": "https://github.com/cmdwtf/Biifrost/archive/ea1cf455e8226365ee74e8f05eb67e394c3c9cf7.zip",
    "includes": "Full repository snapshot; may include other device revisions.",
    "submodules": []
   }
  ]
 },
 "nextSteps": [
  "Read the source licences and revision notes; preserve upstream attribution.",
  "Download the pinned design files or repository archives and resolve external libraries, submodules and large-file pointers.",
  "Inspect the circuit, PCB, BOM, enclosure and firmware together; resolve the listed gaps before ordering parts or fabrication.",
  "Follow the upstream assembly and programming instructions. Record changes and bench-test the resulting hardware."
 ]
}