Update vendor manifest with new components, adjust last checked timestamps, and enhance actuator and mounting data structures. Remove deprecated armpitmfg data and improve hardware part definitions across multiple components.

This commit is contained in:
MunchDev-oss
2026-01-10 00:06:45 -05:00
parent 004fcc59df
commit 86f0acc26b
32 changed files with 738 additions and 594 deletions

View File

@@ -10,7 +10,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl",
"checksum_sha256": "55ede7dff60a31d68159b352b5f2c63792b7a0dbe9d543a43681c3e52d229115", "checksum_sha256": "55ede7dff60a31d68159b352b5f2c63792b7a0dbe9d543a43681c3e52d229115",
"last_checked": "2026-01-07T01:20:58.324330+00:00", "last_checked": "2026-01-07T06:30:07.525364+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -26,7 +26,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Clamping Thread - Belt Clamp.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Clamping Thread - Belt Clamp.stl",
"checksum_sha256": "457a71bc09cb53f12026fd829bec8fa5b04fdead0788822935780f42c90b9a7a", "checksum_sha256": "457a71bc09cb53f12026fd829bec8fa5b04fdead0788822935780f42c90b9a7a",
"last_checked": "2026-01-07T01:20:58.945151+00:00", "last_checked": "2026-01-07T06:30:08.525159+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -42,7 +42,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Clamping Thread - End Effector.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Clamping Thread - End Effector.stl",
"checksum_sha256": "4860947b201e2e773b295d33bba09423ae40b4adeef3605d62687f2d40277de1", "checksum_sha256": "4860947b201e2e773b295d33bba09423ae40b4adeef3605d62687f2d40277de1",
"last_checked": "2026-01-07T01:20:59.854476+00:00", "last_checked": "2026-01-07T06:30:09.547007+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -58,7 +58,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Nut - 5 Sided.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Nut - 5 Sided.stl",
"checksum_sha256": "38630c70b2fb929bba9a705dabf5bbd7b49ec882963e042b7108dc74284dd6ff", "checksum_sha256": "38630c70b2fb929bba9a705dabf5bbd7b49ec882963e042b7108dc74284dd6ff",
"last_checked": "2026-01-07T01:21:00.555525+00:00", "last_checked": "2026-01-07T06:30:10.564924+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -74,7 +74,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Extrusion Cap.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Extrusion Cap.stl",
"checksum_sha256": "56fa9bb318cdeadc6d1698a1e6cef9371e58b0bc9c7729985bf639d8da2f25da", "checksum_sha256": "56fa9bb318cdeadc6d1698a1e6cef9371e58b0bc9c7729985bf639d8da2f25da",
"last_checked": "2026-01-07T01:21:01.205246+00:00", "last_checked": "2026-01-07T06:30:11.578686+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -90,7 +90,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Bottom.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Bottom.stl",
"checksum_sha256": "e7abdb99a7e9b9e7408a7b04a7dd50e42cc74510ea2969016a45a2a1387dcde3", "checksum_sha256": "e7abdb99a7e9b9e7408a7b04a7dd50e42cc74510ea2969016a45a2a1387dcde3",
"last_checked": "2026-01-07T01:21:02.027595+00:00", "last_checked": "2026-01-07T06:30:14.604915+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -106,7 +106,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Cover.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Cover.stl",
"checksum_sha256": "bbabc742d2f1753d1b4e21e42c197aec31a4a083b5c634e6e825cec69d4e3258", "checksum_sha256": "bbabc742d2f1753d1b4e21e42c197aec31a4a083b5c634e6e825cec69d4e3258",
"last_checked": "2026-01-07T01:21:02.767604+00:00", "last_checked": "2026-01-07T06:30:18.689516+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -122,7 +122,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Middle.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Middle.stl",
"checksum_sha256": "ce6fb769378636c287af788ce42bdab1f2185dcffba929a0c72598742793b48a", "checksum_sha256": "ce6fb769378636c287af788ce42bdab1f2185dcffba929a0c72598742793b48a",
"last_checked": "2026-01-07T01:21:03.531342+00:00", "last_checked": "2026-01-07T06:30:22.906540+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -133,12 +133,12 @@
"source_path": "Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl", "source_path": "Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl",
"source_ref": "main", "source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl",
"orig_site_json": "website/src/data/components/mounting.json", "orig_site_json": "website/src/data/components/mounting/ossm.json",
"orig_item_id": "ossm-actuator-body-middle-pivot", "orig_item_id": "ossm-actuator-body-middle-pivot",
"pinned_sha": "ad39a03b628b8e38549b99036c8dfd4131948545", "pinned_sha": "ad39a03b628b8e38549b99036c8dfd4131948545",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/ad39a03b628b8e38549b99036c8dfd4131948545/Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/ad39a03b628b8e38549b99036c8dfd4131948545/Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl",
"checksum_sha256": "f6403a3c53e0d8c8e63d48bf853ab17c9f283421b1665b5503dbb04d59d0f52d", "checksum_sha256": "f6403a3c53e0d8c8e63d48bf853ab17c9f283421b1665b5503dbb04d59d0f52d",
"last_checked": "2026-01-07T01:21:04.528132+00:00", "last_checked": "2026-01-07T07:29:55.699272+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/ad39a03b628b8e38549b99036c8dfd4131948545/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/ad39a03b628b8e38549b99036c8dfd4131948545/LICENCE",
"upstream_latest_sha": "ad39a03b628b8e38549b99036c8dfd4131948545" "upstream_latest_sha": "ad39a03b628b8e38549b99036c8dfd4131948545"
@@ -154,7 +154,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Belt Tensioner.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Belt Tensioner.stl",
"checksum_sha256": "31c74250c237763b0013ff42cc714ce14c293382a726de363f1686a7559f525f", "checksum_sha256": "31c74250c237763b0013ff42cc714ce14c293382a726de363f1686a7559f525f",
"last_checked": "2026-01-07T01:21:05.499523+00:00", "last_checked": "2026-01-07T07:29:56.698523+00:00",
"status": "up-to-date", "status": "up-to-date",
"license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE", "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab" "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
@@ -165,15 +165,15 @@
"source_path": "Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl", "source_path": "Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl",
"source_ref": "main", "source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl",
"orig_site_json": "website/src/data/components/mounting.json", "orig_site_json": "website/src/data/components/mounting/ossm.json",
"orig_item_id": "ossm-handle-spacer", "orig_item_id": "ossm-handle-spacer",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl",
"checksum_sha256": null, "checksum_sha256": "55ede7dff60a31d68159b352b5f2c63792b7a0dbe9d543a43681c3e52d229115",
"last_checked": null, "last_checked": "2026-01-07T07:29:59.629891+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
}, },
{ {
"id": "ossm-pcb-3030-mount", "id": "ossm-pcb-3030-mount",
@@ -181,7 +181,7 @@
"source_path": "Printed Parts/PCB/OSSM - PCB - 3030 Mount.stl", "source_path": "Printed Parts/PCB/OSSM - PCB - 3030 Mount.stl",
"source_ref": "main", "source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - 3030 Mount.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - 3030 Mount.stl",
"orig_site_json": "website/src/data/components/pcb.json", "orig_site_json": "website/src/data/components/pcb/ossm.json",
"orig_item_id": "ossm-pcb-3030-mount", "orig_item_id": "ossm-pcb-3030-mount",
"pinned_sha": null, "pinned_sha": null,
"pinned_raw_url": null, "pinned_raw_url": null,
@@ -197,7 +197,7 @@
"source_path": "Printed Parts/PCB/OSSM - PCB - 3030 Mount Cover.stl", "source_path": "Printed Parts/PCB/OSSM - PCB - 3030 Mount Cover.stl",
"source_ref": "main", "source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - 3030 Mount Cover.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - 3030 Mount Cover.stl",
"orig_site_json": "website/src/data/components/pcb.json", "orig_site_json": "website/src/data/components/pcb/ossm.json",
"orig_item_id": "ossm-pcb-3030-mount-cover", "orig_item_id": "ossm-pcb-3030-mount-cover",
"pinned_sha": null, "pinned_sha": null,
"pinned_raw_url": null, "pinned_raw_url": null,
@@ -208,148 +208,26 @@
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
{ {
"id": "ossm-pcb-aio-cover-mount", "id": "ossm-pcb-aio-backpack-base",
"source_repo": "KinkyMakers/OSSM-hardware", "source_repo": "armpitMFG/OSSM-Parts",
"source_path": "Printed Parts/PCB/OSSM - PCB - AIO Cover Mount.stl", "source_path": "OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Base V2.3c.stl",
"source_ref": "main", "source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - AIO Cover Mount.stl", "local_path": "vendor/armpitMFG-OSSM-Parts/OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Base V2.3c.stl",
"orig_site_json": "website/src/data/components/pcb.json", "orig_site_json": "website/src/data/components/pcb/armpitmfg.json",
"orig_item_id": "ossm-pcb-aio-cover-mount", "orig_item_id": "ossm-pcb-aio-backpack-base",
"pinned_sha": null, "status": "pending",
"pinned_raw_url": null, "pinned_sha": null
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
}, },
{ {
"id": "ossm-pitclamp-mini-42AIM30", "id": "ossm-pcb-aio-backpack-cap",
"source_repo": "KinkyMakers/OSSM-hardware", "source_repo": "armpitMFG/OSSM-Parts",
"source_path": "Printed Parts/Mounting/Non-standard/OSSM - Mounting Ring - PitClamp Mini - 42AIM V1.1.stl", "source_path": "OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Cap (Default).stl",
"source_ref": "main", "source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Mounting/Non-standard/OSSM - Mounting Ring - PitClamp Mini - 42AIM V1.1.stl", "local_path": "vendor/armpitMFG-OSSM-Parts/OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Cap (Default).stl",
"orig_site_json": "website/src/data/components/mounting.json", "orig_site_json": "website/src/data/components/pcb/armpitmfg.json",
"orig_item_id": "ossm-pitclamp-mini-42AIM30", "orig_item_id": "ossm-pcb-aio-backpack-cap",
"pinned_sha": null, "status": "pending",
"pinned_raw_url": null, "pinned_sha": null
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
},
{
"id": "ossm-pitclamp-mini-57AIM30",
"source_repo": "KinkyMakers/OSSM-hardware",
"source_path": "Printed Parts/Mounting/OSSM - Mounting Ring - PitClamp Mini - 57AIM V1.1.stl",
"source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Mounting/OSSM - Mounting Ring - PitClamp Mini - 57AIM V1.1.stl",
"orig_site_json": "website/src/data/components/mounting.json",
"orig_item_id": "ossm-pitclamp-mini-57AIM30",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
},
{
"id": "ossm-pitclamp-mini-dogbone-bolts ",
"source_repo": "KinkyMakers/OSSM-hardware",
"source_path": "Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Dogbone Bolts.stl",
"source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Dogbone Bolts.stl",
"orig_site_json": "website/src/data/components/mounting.json",
"orig_item_id": "ossm-pitclamp-mini-dogbone-bolts ",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
},
{
"id": "ossm-pitclamp-mini-dogbone-nuts",
"source_repo": "KinkyMakers/OSSM-hardware",
"source_path": "Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Dogbone Nuts.stl",
"source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Dogbone Nuts.stl",
"orig_site_json": "website/src/data/components/mounting.json",
"orig_item_id": "ossm-pitclamp-mini-dogbone-nuts",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
},
{
"id": "ossm-pitclamp-mini-handle",
"source_repo": "KinkyMakers/OSSM-hardware",
"source_path": "Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Handle.stl",
"source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Handle.stl",
"orig_site_json": "website/src/data/components/mounting.json",
"orig_item_id": "ossm-pitclamp-mini-handle",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
},
{
"id": "ossm-pitclamp-mini-iHSV57",
"source_repo": "KinkyMakers/OSSM-hardware",
"source_path": "Printed Parts/Mounting/Non-standard/OSSM - Mounting Ring - PitClamp Mini - iHSV57.stl",
"source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Mounting/Non-standard/OSSM - Mounting Ring - PitClamp Mini - iHSV57.stl",
"orig_site_json": "website/src/data/components/mounting.json",
"orig_item_id": "ossm-pitclamp-mini-iHSV57",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
},
{
"id": "ossm-pitclamp-mini-lower",
"source_repo": "KinkyMakers/OSSM-hardware",
"source_path": "Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Lower V1.1.stl",
"source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Lower V1.1.stl",
"orig_site_json": "website/src/data/components/mounting.json",
"orig_item_id": "ossm-pitclamp-mini-lower",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
},
{
"id": "ossm-pitclamp-mini-upper",
"source_repo": "KinkyMakers/OSSM-hardware",
"source_path": "Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Upper V1.1.stl",
"source_ref": "main",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Mounting/OSSM - Base - PitClamp Mini - Upper V1.1.stl",
"orig_site_json": "website/src/data/components/mounting.json",
"orig_item_id": "ossm-pitclamp-mini-upper",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "error",
"license": null,
"upstream_latest_sha": null
}, },
{ {
"id": "ossm-remote-body", "id": "ossm-remote-body",
@@ -359,13 +237,13 @@
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Body.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Body.stl",
"orig_site_json": "website/src/data/components/remote.json", "orig_site_json": "website/src/data/components/remote.json",
"orig_item_id": "ossm-remote-body", "orig_item_id": "ossm-remote-body",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/OSSM - Remote - Body.stl",
"checksum_sha256": null, "checksum_sha256": "a0c3bb663a4bba6876a89c8e0dce81d0c6c673c9fc1f4537537000576f7f9e48",
"last_checked": null, "last_checked": "2026-01-07T09:37:56.320094+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
}, },
{ {
"id": "ossm-remote-knob", "id": "ossm-remote-knob",
@@ -375,13 +253,13 @@
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Knob - Rounded.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Knob - Rounded.stl",
"orig_site_json": "website/src/data/components/remote.json", "orig_site_json": "website/src/data/components/remote.json",
"orig_item_id": "ossm-remote-knob", "orig_item_id": "ossm-remote-knob",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/OSSM - Remote - Knob - Rounded.stl",
"checksum_sha256": null, "checksum_sha256": "3dcf73220cecd534ea9db0d991cec1001b4495f0b9d98f71f5b0b8c68b780439",
"last_checked": null, "last_checked": "2026-01-07T09:37:59.299155+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
}, },
{ {
"id": "ossm-remote-knob-knurled", "id": "ossm-remote-knob-knurled",
@@ -391,13 +269,13 @@
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled.stl",
"orig_site_json": "website/src/data/components/remote.json", "orig_site_json": "website/src/data/components/remote.json",
"orig_item_id": "ossm-remote-knob-knurled", "orig_item_id": "ossm-remote-knob-knurled",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled.stl",
"checksum_sha256": null, "checksum_sha256": "43f68e9467d4da82e6e9aaa545e9d9eda19ef60f8173ccd7fab7fa0835e770d4",
"last_checked": null, "last_checked": "2026-01-07T09:38:02.349095+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
}, },
{ {
"id": "ossm-remote-knob-knurled-with-position-indicator", "id": "ossm-remote-knob-knurled-with-position-indicator",
@@ -407,13 +285,13 @@
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled With Position Indicator.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled With Position Indicator.stl",
"orig_site_json": "website/src/data/components/remote.json", "orig_site_json": "website/src/data/components/remote.json",
"orig_item_id": "ossm-remote-knob-knurled-with-position-indicator", "orig_item_id": "ossm-remote-knob-knurled-with-position-indicator",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled With Position Indicator.stl",
"checksum_sha256": null, "checksum_sha256": "4d06b58617b70633610c4d6fc8441eff45e751b904d7b0ecd442ea97a8bfa2a6",
"last_checked": null, "last_checked": "2026-01-07T09:38:05.401527+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
}, },
{ {
"id": "ossm-remote-knob-simple-with-position-indicator", "id": "ossm-remote-knob-simple-with-position-indicator",
@@ -423,13 +301,13 @@
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Simple With Position Indicator.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Simple With Position Indicator.stl",
"orig_site_json": "website/src/data/components/remote.json", "orig_site_json": "website/src/data/components/remote.json",
"orig_item_id": "ossm-remote-knob-simple-with-position-indicator", "orig_item_id": "ossm-remote-knob-simple-with-position-indicator",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Simple With Position Indicator.stl",
"checksum_sha256": null, "checksum_sha256": "b1816680cc49d5afe57b5d4f5dabab56b5446a429d43c94d184892365bfa9330",
"last_checked": null, "last_checked": "2026-01-07T09:38:08.443214+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
}, },
{ {
"id": "ossm-remote-top-cover", "id": "ossm-remote-top-cover",
@@ -439,13 +317,13 @@
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Top Cover.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Top Cover.stl",
"orig_site_json": "website/src/data/components/remote.json", "orig_site_json": "website/src/data/components/remote.json",
"orig_item_id": "ossm-remote-top-cover", "orig_item_id": "ossm-remote-top-cover",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/OSSM - Remote - Top Cover.stl",
"checksum_sha256": null, "checksum_sha256": "890a6b117dc6fd306b7523838ad81ae32ad4e642c90179a58d9f313b3f3c783e",
"last_checked": null, "last_checked": "2026-01-07T09:38:11.540477+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
}, },
{ {
"id": "ossm-toy-mount-double-double-24mm-threaded", "id": "ossm-toy-mount-double-double-24mm-threaded",
@@ -459,7 +337,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -475,7 +353,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -491,7 +369,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -507,7 +385,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -523,7 +401,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -539,7 +417,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -555,7 +433,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -571,7 +449,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -587,7 +465,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
@@ -603,10 +481,65 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending", "status": "error",
"license": null, "license": null,
"upstream_latest_sha": null "upstream_latest_sha": null
}, },
{
"id": "pitclamp-mini-base-ossm-v2",
"source_repo": "armpitMFG/PitClamp-Mini",
"source_path": "Files/Bases/PitClamp Mini - Base - Modular - OSSM v2.stl",
"source_ref": "main",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Bases/PitClamp Mini - Base - Modular - OSSM v2.stl",
"orig_site_json": "website/src/data/components/mounting/armpitmfg.json",
"orig_item_id": "pitclamp-mini-base-ossm-v2",
"status": "pending",
"pinned_sha": null
},
{
"id": "pitclamp-mini-rail-clamp",
"source_repo": "armpitMFG/PitClamp-Mini",
"source_path": "Files/Rail Components/PitClamp Mini - Rail - Standard Mod - Clamp V1.1.stl",
"source_ref": "main",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Rail Components/PitClamp Mini - Rail - Standard Mod - Clamp V1.1.stl",
"orig_site_json": "website/src/data/components/mounting/armpitmfg.json",
"orig_item_id": "pitclamp-mini-rail-clamp",
"status": "pending",
"pinned_sha": null
},
{
"id": "pitclamp-mini-rail-pivot",
"source_repo": "armpitMFG/PitClamp-Mini",
"source_path": "Files/Rail Components/PitClamp Mini - Rail - Standard Mod - Pivot V1.1.stl",
"source_ref": "main",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Rail Components/PitClamp Mini - Rail - Standard Mod - Pivot V1.1.stl",
"orig_site_json": "website/src/data/components/mounting/armpitmfg.json",
"orig_item_id": "pitclamp-mini-rail-pivot",
"status": "pending",
"pinned_sha": null
},
{
"id": "pitclamp-mini-ring-57aim",
"source_repo": "armpitMFG/PitClamp-Mini",
"source_path": "Files/Rings/PitClamp Mini - Ring v1.1 - 57AIM - 5mm Offset +Passthru.stl",
"source_ref": "main",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Rings/PitClamp Mini - Ring v1.1 - 57AIM - 5mm Offset +Passthru.stl",
"orig_site_json": "website/src/data/components/mounting/armpitmfg.json",
"orig_item_id": "pitclamp-mini-ring-57aim",
"status": "pending",
"pinned_sha": null
},
{
"id": "pitclamp-mini-ring-ihsv57",
"source_repo": "armpitMFG/PitClamp-Mini",
"source_path": "Files/Rings/PitClamp Mini - Ring - iHSV57 - Default - 5mm Offset.stl",
"source_ref": "main",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Rings/PitClamp Mini - Ring - iHSV57 - Default - 5mm Offset.stl",
"orig_site_json": "website/src/data/components/mounting/armpitmfg.json",
"orig_item_id": "pitclamp-mini-ring-ihsv57",
"status": "pending",
"pinned_sha": null
},
{ {
"id": "pivot-plate", "id": "pivot-plate",
"source_repo": "KinkyMakers/OSSM-hardware", "source_repo": "KinkyMakers/OSSM-hardware",
@@ -615,13 +548,13 @@
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Left.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Left.stl",
"orig_site_json": "website/src/data/components/stand.json", "orig_site_json": "website/src/data/components/stand.json",
"orig_item_id": "pivot-plate", "orig_item_id": "pivot-plate",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Left.stl",
"checksum_sha256": null, "checksum_sha256": "44a5527b613743acc394e4a6dfe89677d37c2e1c8a1537e76184812edbba0216",
"last_checked": null, "last_checked": "2026-01-07T09:38:41.826563+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
}, },
{ {
"id": "pivot-plate-right", "id": "pivot-plate-right",
@@ -631,12 +564,12 @@
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Right.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Right.stl",
"orig_site_json": "website/src/data/components/stand.json", "orig_site_json": "website/src/data/components/stand.json",
"orig_item_id": "pivot-plate-right", "orig_item_id": "pivot-plate-right",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Right.stl",
"checksum_sha256": null, "checksum_sha256": "20fba186fd8c50f08b35d57c354e62288d582ad283aa474ee271b27f08aa972a",
"last_checked": null, "last_checked": "2026-01-07T10:37:58.707054+00:00",
"status": "error", "status": "up-to-date",
"license": null, "license": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/LICENCE",
"upstream_latest_sha": null "upstream_latest_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab"
} }
] ]

View File

@@ -46,7 +46,7 @@ Becoming the central hub for starting an OSSM build.
## 📋 TODO List ## 📋 TODO List
### High Priority ### High Priority
- [ ] Finalize Actuator Components and mapping to BOM [In Progress] - [X] Finalize Actuator Components and mapping to BOM [Printed Parts Validated - Unknown location of M3x20mm SHCS]
- [ ] Finalize Stand Components and mapping to BOM - [ ] Finalize Stand Components and mapping to BOM
- [ ] Finalize PCB Components and mapping to BOM - [ ] Finalize PCB Components and mapping to BOM
- [ ] Finalize Toy Mounts Components and mapping to BOM - [ ] Finalize Toy Mounts Components and mapping to BOM

View File

@@ -304,6 +304,65 @@ export default function BOMSummary({ config }) {
// Skip hinges and remotes as they're handled separately above // Skip hinges and remotes as they're handled separately above
if (componentKey === 'hinges' || componentKey === 'remotes') return; if (componentKey === 'hinges' || componentKey === 'remotes') return;
// Handle components with systems (like mounts)
if (component.systems) {
// Find the selected system based on config
let selectedSystemId = null;
if (componentKey === 'mounting' && config.mount) {
selectedSystemId = config.mount.id;
} else if (componentKey === 'toyMounts' && config.toyMountOptions && config.toyMountOptions.length > 0) {
// For toy mounts, process all selected options
config.toyMountOptions.forEach((toyMount) => {
const system = component.systems[toyMount.id];
if (system?.hardwareParts) {
system.hardwareParts.forEach((hardware) => {
if (!hardware.required) return;
if (!evaluateCondition(hardware.Condition, config)) return;
const key = hardware.id;
if (hardwareMap.has(key)) {
const existing = hardwareMap.get(key);
existing.quantity = (existing.quantity || 1) + (hardware.quantity || 1);
} else {
hardwareMap.set(key, {
...hardware,
quantity: hardware.quantity || 1,
category: component.category || 'Hardware',
hardwareType: getHardwareType(hardware)
});
}
});
}
});
return; // Skip the rest for toy mounts
}
if (selectedSystemId) {
const system = component.systems[selectedSystemId];
if (system?.hardwareParts) {
system.hardwareParts.forEach((hardware) => {
if (!hardware.required) return;
if (!evaluateCondition(hardware.Condition, config)) return;
const key = hardware.id;
if (hardwareMap.has(key)) {
const existing = hardwareMap.get(key);
existing.quantity = (existing.quantity || 1) + (hardware.quantity || 1);
} else {
hardwareMap.set(key, {
...hardware,
quantity: hardware.quantity || 1,
category: component.category || 'Hardware',
hardwareType: getHardwareType(hardware)
});
}
});
}
}
return; // Skip direct hardwareParts check for components with systems
}
// Handle components with direct hardwareParts (old structure)
if (!component.hardwareParts) return; if (!component.hardwareParts) return;
// Check if this component has any selected printed parts OR selected options // Check if this component has any selected printed parts OR selected options
@@ -557,10 +616,58 @@ export default function BOMSummary({ config }) {
} }
} }
// Handle mount systems
if (config.mount && partsData.components?.mounting?.systems) {
const mountSystem = partsData.components.mounting.systems[config.mount.id];
if (mountSystem?.hardwareParts) {
const componentHardware = [];
mountSystem.hardwareParts.forEach((hardware) => {
if (hardware.required && evaluateCondition(hardware.Condition, config)) {
componentHardware.push({
...hardware,
quantity: hardware.quantity || 1,
hardwareType: getHardwareType(hardware)
});
}
});
if (componentHardware.length > 0) {
expandedHardware.push({
component: partsData.components.mounting.category || 'Mounting',
parts: componentHardware,
});
}
}
}
// Handle toy mount systems
if (config.toyMountOptions && config.toyMountOptions.length > 0 && partsData.components?.toyMounts?.systems) {
config.toyMountOptions.forEach((toyMount) => {
const toyMountSystem = partsData.components.toyMounts.systems[toyMount.id];
if (toyMountSystem?.hardwareParts) {
const componentHardware = [];
toyMountSystem.hardwareParts.forEach((hardware) => {
if (hardware.required && evaluateCondition(hardware.Condition, config)) {
componentHardware.push({
...hardware,
quantity: hardware.quantity || 1,
hardwareType: getHardwareType(hardware)
});
}
});
if (componentHardware.length > 0) {
expandedHardware.push({
component: partsData.components.toyMounts.category || 'Toy Mounts',
parts: componentHardware,
});
}
}
});
}
// Handle other components // Handle other components
const componentPrintedPartIds = new Map(); const componentPrintedPartIds = new Map();
Object.entries(partsData.components || {}).forEach(([componentKey, component]) => { Object.entries(partsData.components || {}).forEach(([componentKey, component]) => {
if (componentKey === 'hinges' || componentKey === 'remotes') return; if (componentKey === 'hinges' || componentKey === 'remotes' || componentKey === 'mounting' || componentKey === 'toyMounts') return;
if (component.printedParts) { if (component.printedParts) {
const partIds = component.printedParts.map(p => p.id); const partIds = component.printedParts.map(p => p.id);
componentPrintedPartIds.set(componentKey, new Set(partIds)); componentPrintedPartIds.set(componentKey, new Set(partIds));
@@ -568,7 +675,7 @@ export default function BOMSummary({ config }) {
}); });
Object.entries(partsData.components || {}).forEach(([componentKey, component]) => { Object.entries(partsData.components || {}).forEach(([componentKey, component]) => {
if (componentKey === 'hinges' || componentKey === 'remotes') return; if (componentKey === 'hinges' || componentKey === 'remotes' || componentKey === 'mounting' || componentKey === 'toyMounts') return;
if (!component.hardwareParts) return; if (!component.hardwareParts) return;
const componentPartIds = componentPrintedPartIds.get(componentKey); const componentPartIds = componentPrintedPartIds.get(componentKey);

View File

@@ -24,10 +24,34 @@
"description": "Hardware fasteners m3 hex nut", "description": "Hardware fasteners m3 hex nut",
"price": 0 "price": 0
}, },
"M5 Hex Nut": { "M4x10 Socket Head cap Screw": {
"id": "hardware-fasteners-m5-hex-nut", "id": "hardware-fasteners-m4x10-shcs",
"name": "M5 Hex Nut", "name": "M4x10 SHCS",
"description": "Hardware fasteners m5 hex nut", "description": "Hardware fasteners m4x10 socket head cap screw",
"price": 0
},
"M4x12 Socket Head cap Screw": {
"id": "hardware-fasteners-m4x12-shcs",
"name": "M4x12 SHCS",
"description": "Hardware fasteners m4x12 socket head cap screw",
"price": 0
},
"M4x25 Socket Head cap Screw": {
"id": "hardware-fasteners-m4x25-shcs",
"name": "M4x25 SHCS",
"description": "Hardware fasteners m4x25 socket head cap screw",
"price": 0
},
"M4 Hex Nuts": {
"id": "hardware-fasteners-m4-hex-nuts",
"name": "M4 Hex Nuts",
"description": "Hardware fasteners m4 hex nuts",
"price": 0
},
"M5 Hex Nuts": {
"id": "hardware-fasteners-m5-hex-nuts",
"name": "M5 Hex Nuts",
"description": "Hardware fasteners m5 hex nuts",
"price": 0 "price": 0
}, },
"M5x20 Socket Head cap Screw": { "M5x20 Socket Head cap Screw": {
@@ -42,6 +66,12 @@
"description": "Hardware fasteners m5x35 socket head cap screw", "description": "Hardware fasteners m5x35 socket head cap screw",
"price": 0 "price": 0
}, },
"M5x40 Socket Head cap Screw": {
"id": "hardware-fasteners-m5x40-shcs",
"name": "M5x40 SHCS",
"description": "Hardware fasteners m5x40 socket head cap screw",
"price": 0
},
"M5x20mm Hex Coupling Nut": { "M5x20mm Hex Coupling Nut": {
"id": "hardware-fasteners-m5x20mm-hex-coupling-nut", "id": "hardware-fasteners-m5x20mm-hex-coupling-nut",
"name": "M5x20mm Hex Coupling Nut", "name": "M5x20mm Hex Coupling Nut",
@@ -54,6 +84,12 @@
"description": "Hardware fasteners m6x12 socket head cap screw", "description": "Hardware fasteners m6x12 socket head cap screw",
"price": 0 "price": 0
}, },
"M6x20mm Socket Head cap Screw": {
"id": "hardware-fasteners-m6x20mm-shcs",
"name": "M6x20mm SHCS",
"description": "Hardware fasteners m6x20mm socket head cap screw",
"price": 0
},
"M6x25 Socket Head cap Screw": { "M6x25 Socket Head cap Screw": {
"id": "hardware-fasteners-m6x25-shcs", "id": "hardware-fasteners-m6x25-shcs",
"name": "M6x25 SHCS", "name": "M6x25 SHCS",

View File

@@ -11,6 +11,7 @@
"timeEstimate": "2h14m", "timeEstimate": "2h14m",
"colour": "primary", "colour": "primary",
"required": true, "required": true,
"quantity": 1,
"filePath": "OSSM - Actuator Body Bottom.stl", "filePath": "OSSM - Actuator Body Bottom.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%20Actuator%20-%20Body%20-%20Bottom.stl?raw=true", "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%20Actuator%20-%20Body%20-%20Bottom.stl?raw=true",
"vendor": { "vendor": {
@@ -19,7 +20,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Bottom.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Bottom.stl",
"checksum_sha256": "e7abdb99a7e9b9e7408a7b04a7dd50e42cc74510ea2969016a45a2a1387dcde3", "checksum_sha256": "e7abdb99a7e9b9e7408a7b04a7dd50e42cc74510ea2969016a45a2a1387dcde3",
"last_checked": "2026-01-07T06:30:14.604915+00:00", "last_checked": "2026-01-07T23:40:57.300803+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
}, },
@@ -31,6 +32,7 @@
"timeEstimate": "2h23m", "timeEstimate": "2h23m",
"colour": "primary", "colour": "primary",
"required": true, "required": true,
"quantity": 1,
"filePath": "OSSM - Actuator Body Middle.stl", "filePath": "OSSM - Actuator Body Middle.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%20Actuator%20-%20Body%20-%20Middle.stl?raw=true", "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%20Actuator%20-%20Body%20-%20Middle.stl?raw=true",
"vendor": { "vendor": {
@@ -39,7 +41,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Middle.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Middle.stl",
"checksum_sha256": "ce6fb769378636c287af788ce42bdab1f2185dcffba929a0c72598742793b48a", "checksum_sha256": "ce6fb769378636c287af788ce42bdab1f2185dcffba929a0c72598742793b48a",
"last_checked": "2026-01-07T06:30:22.906540+00:00", "last_checked": "2026-01-07T23:40:59.324441+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
}, },
@@ -51,6 +53,7 @@
"timeEstimate": "1h3m", "timeEstimate": "1h3m",
"colour": "primary", "colour": "primary",
"required": true, "required": true,
"quantity": 1,
"Condition": { "Condition": {
"cover.id": "standard-cover" "cover.id": "standard-cover"
}, },
@@ -62,7 +65,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Cover.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Actuator - Body - Cover.stl",
"checksum_sha256": "bbabc742d2f1753d1b4e21e42c197aec31a4a083b5c634e6e825cec69d4e3258", "checksum_sha256": "bbabc742d2f1753d1b4e21e42c197aec31a4a083b5c634e6e825cec69d4e3258",
"last_checked": "2026-01-07T06:30:18.689516+00:00", "last_checked": "2026-01-07T23:40:58.302462+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
}, },
@@ -74,6 +77,7 @@
"timeEstimate": "40m25s", "timeEstimate": "40m25s",
"colour": "secondary", "colour": "secondary",
"required": true, "required": true,
"quantity": 1,
"filePath": "OSSM - Belt Tensioner.stl", "filePath": "OSSM - Belt Tensioner.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%20Belt%20Tensioner.stl?raw=true", "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%20Belt%20Tensioner.stl?raw=true",
"vendor": { "vendor": {
@@ -82,7 +86,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Belt Tensioner.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - Belt Tensioner.stl",
"checksum_sha256": "31c74250c237763b0013ff42cc714ce14c293382a726de363f1686a7559f525f", "checksum_sha256": "31c74250c237763b0013ff42cc714ce14c293382a726de363f1686a7559f525f",
"last_checked": "2026-01-07T07:29:56.698523+00:00", "last_checked": "2026-01-07T23:41:01.332754+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
}, },
@@ -94,6 +98,7 @@
"timeEstimate": "19m36s", "timeEstimate": "19m36s",
"colour": "secondary", "colour": "secondary",
"required": true, "required": true,
"quantity": 1,
"filePath": "OSSM - 24mm Clamping Thread Belt Clamp.stl", "filePath": "OSSM - 24mm Clamping Thread Belt Clamp.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%2024mm%20Clamping%20Thread%20-%20Belt%20Clamp.stl?raw=true", "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%2024mm%20Clamping%20Thread%20-%20Belt%20Clamp.stl?raw=true",
"vendor": { "vendor": {
@@ -102,7 +107,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Clamping Thread - Belt Clamp.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Clamping Thread - Belt Clamp.stl",
"checksum_sha256": "457a71bc09cb53f12026fd829bec8fa5b04fdead0788822935780f42c90b9a7a", "checksum_sha256": "457a71bc09cb53f12026fd829bec8fa5b04fdead0788822935780f42c90b9a7a",
"last_checked": "2026-01-07T06:30:08.525159+00:00", "last_checked": "2026-01-07T23:40:53.289981+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
}, },
@@ -114,6 +119,7 @@
"timeEstimate": "1h20m", "timeEstimate": "1h20m",
"colour": "secondary", "colour": "secondary",
"required": true, "required": true,
"quantity": 1,
"filePath": "OSSM - 24mm Clamping Thread End Effector.stl", "filePath": "OSSM - 24mm Clamping Thread End Effector.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%2024mm%20Clamping%20Thread%20-%20End%20Effector.stl?raw=true", "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%2024mm%20Clamping%20Thread%20-%20End%20Effector.stl?raw=true",
"vendor": { "vendor": {
@@ -122,7 +128,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Clamping Thread - End Effector.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Clamping Thread - End Effector.stl",
"checksum_sha256": "4860947b201e2e773b295d33bba09423ae40b4adeef3605d62687f2d40277de1", "checksum_sha256": "4860947b201e2e773b295d33bba09423ae40b4adeef3605d62687f2d40277de1",
"last_checked": "2026-01-07T06:30:09.547007+00:00", "last_checked": "2026-01-07T23:40:54.274313+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
}, },
@@ -134,6 +140,7 @@
"timeEstimate": "21m10s", "timeEstimate": "21m10s",
"colour": "secondary", "colour": "secondary",
"required": true, "required": true,
"quantity": 2,
"filePath": "OSSM - 24mm Nut 5 Sided.stl", "filePath": "OSSM - 24mm Nut 5 Sided.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%2024mm%20Nut%20-%205%20Sided.stl?raw=true", "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/OSSM%20-%2024mm%20Nut%20-%205%20Sided.stl?raw=true",
"vendor": { "vendor": {
@@ -142,7 +149,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Nut - 5 Sided.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Actuator/OSSM - 24mm Nut - 5 Sided.stl",
"checksum_sha256": "38630c70b2fb929bba9a705dabf5bbd7b49ec882963e042b7108dc74284dd6ff", "checksum_sha256": "38630c70b2fb929bba9a705dabf5bbd7b49ec882963e042b7108dc74284dd6ff",
"last_checked": "2026-01-07T06:30:10.564924+00:00", "last_checked": "2026-01-07T23:40:55.286530+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
} }
@@ -153,7 +160,8 @@
"required": true, "required": true,
"quantity": 8, "quantity": 8,
"relatedParts": [ "relatedParts": [
"ossm-actuator-body-bottom" "ossm-actuator-body-bottom",
"ossm-actuator-body-cover"
] ]
}, },
{ {
@@ -161,7 +169,7 @@
"required": true, "required": true,
"quantity": 2, "quantity": 2,
"relatedParts": [ "relatedParts": [
"ossm-24mm-nut-5-sided" "ossm-24mm-clamping-thread-end-effector"
] ]
}, },
{ {
@@ -181,7 +189,7 @@
] ]
}, },
{ {
"id": "hardware-fasteners-m5-hex-nut", "id": "hardware-fasteners-m5-hex-nuts",
"required": true, "required": true,
"quantity": 7, "quantity": 7,
"relatedParts": [ "relatedParts": [
@@ -237,6 +245,8 @@
"relatedParts": [ "relatedParts": [
"ossm-24mm-clamping-thread-belt-clamp", "ossm-24mm-clamping-thread-belt-clamp",
"ossm-24mm-nut-5-sided", "ossm-24mm-nut-5-sided",
"ossm-belt-tensioner",
"ossm-24mm-clamping-thread-end-effector",
"ossm-actuator-body-bottom" "ossm-actuator-body-bottom"
] ]
}, },

View File

@@ -12,8 +12,8 @@
"recommended": true "recommended": true
}, },
{ {
"id": "42AIM30", "id": "42AIM",
"name": "42AIM30 \"Round Motor\"", "name": "42AIM \"Round Motor\"",
"description": "High precision NEMA 17 stepper motor with 0.9° step angle", "description": "High precision NEMA 17 stepper motor with 0.9° step angle",
"speed": "1500 RPM", "speed": "1500 RPM",
"wattage": "100W", "wattage": "100W",

View File

@@ -1,121 +0,0 @@
{
"pitclamp": {
"name": "PitClamp Mini",
"description": "armpitMFG PitClamp Mini - Modular Quick-Release Mount",
"image": "https://raw.githubusercontent.com/armpitMFG/PitClamp-Mini/main/Images/Renders/Primary/Parts%20Only.png",
"printedParts": [
{
"id": "pitclamp-mini-base-ossm-v2",
"name": "PitClamp Mini Base - OSSM v2",
"description": "Modular base for OSSM v2",
"filamentEstimate": 65,
"timeEstimate": "2h30m",
"colour": "primary",
"required": true,
"filePath": "PitClamp Mini - Base - Modular - OSSM v2.stl",
"url": "https://github.com/armpitMFG/PitClamp-Mini/blob/main/Files/Bases/PitClamp%20Mini%20-%20Base%20-%20Modular%20-%20OSSM%20v2.stl?raw=true",
"vendor": {
"manifest_id": "pitclamp-mini-base-ossm-v2",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Bases/PitClamp Mini - Base - Modular - OSSM v2.stl",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "pending"
}
},
{
"id": "pitclamp-mini-rail-clamp",
"name": "PitClamp Mini Rail Clamp",
"description": "Standard rail clamp mod",
"filamentEstimate": 25,
"timeEstimate": "1h",
"colour": "primary",
"required": true,
"filePath": "PitClamp Mini - Rail - Standard Mod - Clamp V1.1.stl",
"url": "https://github.com/armpitMFG/PitClamp-Mini/blob/main/Files/Rail%20Components/PitClamp%20Mini%20-%20Rail%20-%20Standard%20Mod%20-%20Clamp%20V1.1.stl?raw=true",
"vendor": {
"manifest_id": "pitclamp-mini-rail-clamp",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Rail Components/PitClamp Mini - Rail - Standard Mod - Clamp V1.1.stl",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "pending"
}
},
{
"id": "pitclamp-mini-rail-pivot",
"name": "PitClamp Mini Rail Pivot",
"description": "Standard rail pivot mod",
"filamentEstimate": 25,
"timeEstimate": "1h",
"colour": "primary",
"required": true,
"filePath": "PitClamp Mini - Rail - Standard Mod - Pivot V1.1.stl",
"url": "https://github.com/armpitMFG/PitClamp-Mini/blob/main/Files/Rail%20Components/PitClamp%20Mini%20-%20Rail%20-%20Standard%20Mod%20-%20Pivot%20V1.1.stl?raw=true",
"vendor": {
"manifest_id": "pitclamp-mini-rail-pivot",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Rail Components/PitClamp Mini - Rail - Standard Mod - Pivot V1.1.stl",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "pending"
}
},
{
"id": "pitclamp-mini-ring-57aim",
"name": "PitClamp Mini Ring - 57AIM",
"description": "Motor ring for 57AIM",
"filamentEstimate": 45,
"timeEstimate": "1h45m",
"colour": "primary",
"required": true,
"Condition": {
"motor.id": "57AIM30"
},
"filePath": "PitClamp Mini - Ring v1.1 - 57AIM - 5mm Offset +Passthru.stl",
"url": "https://github.com/armpitMFG/PitClamp-Mini/blob/main/Files/Rings/PitClamp%20Mini%20-%20Ring%20v1.1%20-%2057AIM%20-%205mm%20Offset%20+Passthru.stl?raw=true",
"vendor": {
"manifest_id": "pitclamp-mini-ring-57aim",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Rings/PitClamp Mini - Ring v1.1 - 57AIM - 5mm Offset +Passthru.stl",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "pending"
}
},
{
"id": "pitclamp-mini-ring-ihsv57",
"name": "PitClamp Mini Ring - iHSV57",
"description": "Motor ring for iHSV57",
"filamentEstimate": 45,
"timeEstimate": "1h45m",
"colour": "primary",
"required": true,
"Condition": {
"motor.id": "iHSV57"
},
"filePath": "PitClamp Mini - Ring - iHSV57 - Default - 5mm Offset.stl",
"url": "https://github.com/armpitMFG/PitClamp-Mini/blob/main/Files/Rings/PitClamp%20Mini%20-%20Ring%20-%20iHSV57%20-%20Default%20-%205mm%20Offset.stl?raw=true",
"vendor": {
"manifest_id": "pitclamp-mini-ring-ihsv57",
"local_path": "vendor/armpitMFG-PitClamp-Mini/Files/Rings/PitClamp Mini - Ring - iHSV57 - Default - 5mm Offset.stl",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "pending"
}
}
],
"hardwareParts": [
{
"id": "pitclamp-hardware",
"required": true
}
]
}
}

View File

@@ -1,13 +1,11 @@
import ossm from './ossm.json'; import ossm from './ossm.json';
import armpitmfg from './armpitmfg.json';
export default { export default {
"mounting": { "mounting": {
"category": "Mounting", "category": "Mounting",
"type": "base", "type": "base",
"systems": { "systems": {
...ossm, ...ossm,
...armpitmfg // ...armpitmfg
} }
} }
}; };

View File

@@ -1,59 +1,240 @@
{ {
"middle-pivot": { "middle-pivot": {
"name": "Middle Pivot", "name": "Middle Pivot",
"description": "Standard OSSM Middle Pivot mounting system", "description": "Standard OSSM Middle Pivot mounting system",
"image": "/images/options/middle-pivot.png", "image": "/images/options/middle-pivot.png",
"printedParts": [ "printedParts": [
{ {
"id": "ossm-actuator-body-middle-pivot", "id": "ossm-actuator-body-middle-pivot",
"name": "Actuator Body Middle Pivot", "name": "Actuator Body Middle Pivot",
"description": "Middle Pivot mounting system", "description": "Middle Pivot mounting system",
"filamentEstimate": 147.19, "filamentEstimate": 147.19,
"timeEstimate": "5h8m", "timeEstimate": "5h8m",
"colour": "primary", "colour": "primary",
"required": true, "required": true,
"replaces": [ "replaces": [
"ossm-actuator-body-middle" "ossm-actuator-body-middle"
],
"filePath": "OSSM - Actuator Body Middle Pivot.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/Non-standard/OSSM%20-%20Actuator%20-%20Body%20-%20Middle%20Pivot.stl?raw=true",
"vendor": {
"manifest_id": "ossm-actuator-body-middle-pivot",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl",
"pinned_sha": "ad39a03b628b8e38549b99036c8dfd4131948545",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/ad39a03b628b8e38549b99036c8dfd4131948545/Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl",
"checksum_sha256": "f6403a3c53e0d8c8e63d48bf853ab17c9f283421b1665b5503dbb04d59d0f52d",
"last_checked": "2026-01-07T01:21:04.528132+00:00",
"status": "up-to-date"
}
},
{
"id": "ossm-handle-spacer",
"name": "Handle Spacer",
"description": "Handle spacer part",
"filamentEstimate": 10,
"colour": "secondary",
"required": true,
"quantity": 2,
"filePath": "OSSM - Handle Spacer.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Stand/OSSM%20-%20Stand%20-%203030%20Extrusion%20Base%20-%20Handle%20Spacer.stl?raw=true",
"vendor": {
"manifest_id": "ossm-handle-spacer",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl",
"pinned_sha": null,
"pinned_raw_url": null,
"checksum_sha256": null,
"last_checked": null,
"status": "pending"
}
}
], ],
"hardwareParts": [ "filePath": "OSSM - Actuator Body Middle Pivot.stl",
{ "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Actuator/Non-standard/OSSM%20-%20Actuator%20-%20Body%20-%20Middle%20Pivot.stl?raw=true",
"id": "hardware-fasteners-m5x35-shcs", "vendor": {
"required": true, "manifest_id": "ossm-actuator-body-middle-pivot",
"quantity": 4 "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl",
"pinned_sha": "ad39a03b628b8e38549b99036c8dfd4131948545",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/ad39a03b628b8e38549b99036c8dfd4131948545/Printed Parts/Actuator/Non-standard/OSSM - Actuator - Body - Middle Pivot.stl",
"checksum_sha256": "f6403a3c53e0d8c8e63d48bf853ab17c9f283421b1665b5503dbb04d59d0f52d",
"last_checked": "2026-01-07T23:41:00.422074+00:00",
"status": "up-to-date"
}
},
{
"id": "ossm-handle-spacer",
"name": "Handle Spacer",
"description": "Handle spacer part",
"filamentEstimate": 10,
"colour": "secondary",
"required": true,
"quantity": 2,
"filePath": "OSSM - Handle Spacer.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Stand/OSSM%20-%20Stand%20-%203030%20Extrusion%20Base%20-%20Handle%20Spacer.stl?raw=true",
"vendor": {
"manifest_id": "ossm-handle-spacer",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl",
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl",
"checksum_sha256": "55ede7dff60a31d68159b352b5f2c63792b7a0dbe9d543a43681c3e52d229115",
"last_checked": "2026-01-07T23:41:02.238918+00:00",
"status": "up-to-date"
}
}
],
"hardwareParts": [
{
"id": "hardware-fasteners-m5x35-shcs",
"required": true,
"quantity": 4
}
]
},
"pitclamp": {
"name": "PitClamp Mini",
"description": "armpitMFG PitClamp Mini - Modular Quick-Release Mount",
"image": "https://raw.githubusercontent.com/armpitMFG/PitClamp-Mini/main/Images/Renders/Primary/Parts%20Only.png",
"printedParts": [
{
"id": "pitclamp-mini-base-dogbone-bolts",
"name": "PitClamp Mini Base - Dogbone Bolts",
"description": "PitClamp Mini base part",
"filamentEstimate": 10,
"colour": "secondary",
"required": true,
"filePath": "OSSM - Base - PitClamp Mini - Dogbone Bolts.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Mounting/OSSM%20-%20Base%20-%20PitClamp%20Mini%20-%20Dogbone%20Bolts.stl?raw=true"
},
{
"id": "pitclamp-mini-base-dogbone-nuts",
"name": "PitClamp Mini Base - Dogbone Nuts",
"description": "PitClamp Mini base part",
"filamentEstimate": 10,
"colour": "secondary",
"required": true,
"filePath": "OSSM - Base - PitClamp Mini - Dogbone Nuts.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Mounting/OSSM%20-%20Base%20-%20PitClamp%20Mini%20-%20Dogbone%20Nuts.stl?raw=true"
},
{
"id": "pitclamp-mini-base-dogbone-handle ",
"name": "PitClamp Mini Base - Handle",
"description": "PitClamp Mini base part",
"filamentEstimate": 10,
"colour": "secondary",
"required": true,
"filePath": "OSSM - Base - PitClamp Mini - Handle.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Mounting/OSSM%20-%20Base%20-%20PitClamp%20Mini%20-%20Handle.stl?raw=true"
},
{
"id": "pitclamp-mini-base-dogbone-lower",
"name": "PitClamp Mini Base - Lower",
"description": "PitClamp Mini base part",
"filamentEstimate": 10,
"colour": "secondary",
"required": true,
"filePath": "OSSM - Base - PitClamp Mini - Lower.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Mounting/OSSM%20-%20Base%20-%20PitClamp%20Mini%20-%20Lower%20V1.1.stl?raw=true"
},
{
"id": "pitclamp-mini-base-dogbone-upper",
"name": "PitClamp Mini Base - Upper",
"description": "PitClamp Mini base part",
"filamentEstimate": 10,
"colour": "secondary",
"required": true,
"filePath": "OSSM - Base - PitClamp Mini - Upper.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Mounting/OSSM%20-%20Base%20-%20PitClamp%20Mini%20-%20Upper%20V1.1.stl?raw=true"
},
{
"id": "pitclamp-mini-ring-57AIM",
"name": "PitClamp Mini Ring - 57AIM",
"description": "Motor ring for 57AIM",
"filamentEstimate": 45,
"timeEstimate": "1h45m",
"colour": "primary",
"required": true,
"Condition": {
"motor.id": "57AIM30"
},
"filePath": "OSSM - Mounting Ring - PitClamp Mini - 57AIM v1.1.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Mounting/OSSM%20-%20Mounting%20Ring%20-%20PitClamp%20Mini%20-%2057AIM%20V1.1.stl?raw=true"
},
{
"id": "pitclamp-mini-ring-ihsv57",
"name": "PitClamp Mini Ring - iHSV57",
"description": "Motor ring for iHSV57",
"filamentEstimate": 45,
"timeEstimate": "1h45m",
"colour": "primary",
"required": true,
"Condition": {
"motor.id": "iHSV57"
},
"filePath": "OSSM - Mounting Ring - PitClamp Mini - iHSV57.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Mounting/Non-standard/OSSM%20-%20Mounting%20Ring%20-%20PitClamp%20Mini%20-%20iHSV57.stl?raw=true"
},
{
"id": "pitclamp-mini-ring-42AIM",
"name": "PitClamp Mini Ring - 42AIM",
"description": "Motor ring for 42AIM",
"filamentEstimate": 45,
"timeEstimate": "1h45m",
"colour": "primary",
"required": true,
"Condition": {
"motor.id": "42AIM"
},
"filePath": "OSSM - Mounting Ring - PitClamp Mini - 42AIM.stl",
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/Mounting/Non-standard/OSSM%20-%20Mounting%20Ring%20-%20PitClamp%20Mini%20-%2042AIM%20V1.1.stl?raw=true"
}
],
"hardwareParts": [
{
"id": "hardware-fasteners-m4x25-shcs",
"required": true,
"quantity": 2
},
{
"id": "hardware-fasteners-m4x12-shcs",
"required": true,
"quantity": 1
},
{
"id": "hardware-fasteners-m4x10-shcs",
"required": true,
"quantity": 1
},
{
"id": "hardware-fasteners-m4-hex-nuts",
"required": true,
"quantity": 3
},
{
"id": "hardware-fasteners-m5x20-shcs",
"required": true,
"quantity": 1
},
{
"id": "hardware-fasteners-m5-hex-nuts",
"required": true,
"quantity": 1
},
{
"id": "hardware-fasteners-m6x20mm-shcs",
"required": true,
"quantity": 2
},
{
"id": "hardware-fasteners-m6-t-nuts",
"required": true,
"quantity": 2
},
{
"id": "hardware-fasteners-m5x35-shcs",
"required": true,
"quantity": 4,
"Condition": {
"motor.id": "57AIM30"
} }
] },
} {
"id": "hardware-fasteners-m5-hex-nuts",
"required": true,
"quantity": 4,
"Condition": {
"motor.id": "57AIM30"
}
},
{
"id": "hardware-fasteners-m5x40-shcs",
"required": true,
"quantity": 4,
"Condition": {
"motor.id": "iHSV57"
}
},
{
"id": "hardware-fasteners-m5-hex-nuts",
"required": true,
"quantity": 4,
"Condition": {
"motor.id": "iHSV57"
}
},
{
"id": "hardware-fasteners-m3x16-shcs",
"required": true,
"quantity": 4,
"Condition": {
"motor.id": "42AIM"
}
}
]
}
} }

View File

@@ -1,56 +1,56 @@
{ {
"aio-cover-mount": { "aio-cover-mount": {
"name": "AIO Cover Mount", "name": "AIO Cover Mount",
"description": "All-in-one cover mount for OSSM v2 AIO PCB", "description": "All-in-one cover mount for OSSM v2 AIO PCB",
"image": "https://raw.githubusercontent.com/armpitMFG/OSSM-Parts/main/OSSM%20v2%20AIO%20PCB%20Backpack%20Mod/Images/Workspace/AIO%20PCB%20Backpack%20-%20Back%20Right.png", "image": "https://raw.githubusercontent.com/armpitMFG/OSSM-Parts/main/OSSM%20v2%20AIO%20PCB%20Backpack%20Mod/Images/Workspace/AIO%20PCB%20Backpack%20-%20Back%20Right.png",
"printedParts": [ "printedParts": [
{ {
"id": "ossm-pcb-aio-backpack-base", "id": "ossm-pcb-aio-backpack-base",
"name": "AIO PCB Backpack Base", "name": "AIO PCB Backpack Base",
"description": "Base part for AIO PCB Backpack V2.3c", "description": "Base part for AIO PCB Backpack V2.3c",
"filamentEstimate": 45, "filamentEstimate": 45,
"timeEstimate": "2h", "timeEstimate": "2h",
"colour": "primary", "colour": "primary",
"required": true, "required": true,
"filePath": "OSSM Mods - AIO PCB Backpack - Base V2.3c.stl", "filePath": "OSSM Mods - AIO PCB Backpack - Base V2.3c.stl",
"url": "https://github.com/armpitMFG/OSSM-Parts/blob/main/OSSM%20v2%20AIO%20PCB%20Backpack%20Mod/Files/OSSM%20Mods%20-%20AIO%20PCB%20Backpack%20-%20Base%20V2.3c.stl?raw=true", "url": "https://github.com/armpitMFG/OSSM-Parts/blob/main/OSSM%20v2%20AIO%20PCB%20Backpack%20Mod/Files/OSSM%20Mods%20-%20AIO%20PCB%20Backpack%20-%20Base%20V2.3c.stl?raw=true",
"vendor": { "vendor": {
"manifest_id": "ossm-pcb-aio-backpack-base", "manifest_id": "ossm-pcb-aio-backpack-base",
"local_path": "vendor/armpitMFG-OSSM-Parts/OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Base V2.3c.stl", "local_path": "vendor/armpitMFG-OSSM-Parts/OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Base V2.3c.stl",
"pinned_sha": null, "pinned_sha": "9793908c23022a3a95651ac1f2287b056b84cd3d",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/armpitMFG/OSSM-Parts/9793908c23022a3a95651ac1f2287b056b84cd3d/OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Base V2.3c.stl",
"checksum_sha256": null, "checksum_sha256": "1fc1eb6947f02b6683ab5960adf6f0cb1ab4431d789dc64bca09e0d730d15990",
"last_checked": null, "last_checked": "2026-01-07T23:41:08.621523+00:00",
"status": "pending" "status": "up-to-date"
} }
}, },
{ {
"id": "ossm-pcb-aio-backpack-cap", "id": "ossm-pcb-aio-backpack-cap",
"name": "AIO PCB Backpack Cap", "name": "AIO PCB Backpack Cap",
"description": "Default cap for AIO PCB Backpack", "description": "Default cap for AIO PCB Backpack",
"filamentEstimate": 15, "filamentEstimate": 15,
"timeEstimate": "45m", "timeEstimate": "45m",
"colour": "primary", "colour": "primary",
"required": true, "required": true,
"filePath": "OSSM Mods - AIO PCB Backpack - Cap (Default).stl", "filePath": "OSSM Mods - AIO PCB Backpack - Cap (Default).stl",
"url": "https://github.com/armpitMFG/OSSM-Parts/blob/main/OSSM%20v2%20AIO%20PCB%20Backpack%20Mod/Files/OSSM%20Mods%20-%20AIO%20PCB%20Backpack%20-%20Cap%20(Default).stl?raw=true", "url": "https://github.com/armpitMFG/OSSM-Parts/blob/main/OSSM%20v2%20AIO%20PCB%20Backpack%20Mod/Files/OSSM%20Mods%20-%20AIO%20PCB%20Backpack%20-%20Cap%20(Default).stl?raw=true",
"vendor": { "vendor": {
"manifest_id": "ossm-pcb-aio-backpack-cap", "manifest_id": "ossm-pcb-aio-backpack-cap",
"local_path": "vendor/armpitMFG-OSSM-Parts/OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Cap (Default).stl", "local_path": "vendor/armpitMFG-OSSM-Parts/OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Cap (Default).stl",
"pinned_sha": null, "pinned_sha": "3f67f0834755e7b7e662acf0dbf2af0c257818b3",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/armpitMFG/OSSM-Parts/3f67f0834755e7b7e662acf0dbf2af0c257818b3/OSSM v2 AIO PCB Backpack Mod/Files/OSSM Mods - AIO PCB Backpack - Cap (Default).stl",
"checksum_sha256": null, "checksum_sha256": "dd76229dd480378df73eb101080c34978bb454017888004f64fc33f2c071e121",
"last_checked": null, "last_checked": "2026-01-07T23:41:13.225270+00:00",
"status": "pending" "status": "up-to-date"
} }
} }
], ],
"hardwareParts": [ "hardwareParts": [
{ {
"id": "hardware-fasteners-m3x8-shcs", "id": "hardware-fasteners-m3x8-shcs",
"required": true, "required": true,
"quantity": 4 "quantity": 4
} }
] ]
} }
} }

View File

@@ -1,69 +1,69 @@
{ {
"3030-mount": { "3030-mount": {
"name": "3030 Mount", "name": "3030 Mount",
"description": "PCB mount for 3030 extrusion",
"image": "/images/options/3030-pcb-mount.png",
"category": "PCB Mount",
"type": "base",
"printedParts": [
{
"id": "ossm-pcb-3030-mount",
"name": "PCB 3030 Mount",
"description": "PCB mount for 3030 extrusion", "description": "PCB mount for 3030 extrusion",
"image": "/images/options/3030-pcb-mount.png", "filamentEstimate": 15,
"category": "PCB Mount", "timeEstimate": "45m",
"type": "base", "colour": "primary",
"printedParts": [ "required": true,
{ "filePath": "OSSM - PCB - 3030 Mount.stl",
"id": "ossm-pcb-3030-mount", "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/PCB/OSSM%20-%20PCB%20-%203030%20Mount.stl?raw=true",
"name": "PCB 3030 Mount", "vendor": {
"description": "PCB mount for 3030 extrusion", "manifest_id": "ossm-pcb-3030-mount",
"filamentEstimate": 15, "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - 3030 Mount.stl",
"timeEstimate": "45m", "pinned_sha": null,
"colour": "primary", "pinned_raw_url": null,
"required": true, "checksum_sha256": null,
"filePath": "OSSM - PCB - 3030 Mount.stl", "last_checked": null,
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/PCB/OSSM%20-%20PCB%20-%203030%20Mount.stl?raw=true", "status": "error"
"vendor": { }
"manifest_id": "ossm-pcb-3030-mount", },
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - 3030 Mount.stl", {
"pinned_sha": null, "id": "ossm-pcb-3030-mount-cover",
"pinned_raw_url": null, "name": "PCB 3030 Mount Cover",
"checksum_sha256": null, "description": "Cover for the 3030 mount",
"last_checked": null, "filamentEstimate": 15,
"status": "pending" "timeEstimate": "45m",
} "colour": "primary",
}, "required": true,
{ "filePath": "OSSM - PCB - 3030 Mount Cover.stl",
"id": "ossm-pcb-3030-mount-cover", "url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/PCB/OSSM%20-%20PCB%20-%203030%20Mount%20Cover.stl?raw=true",
"name": "PCB 3030 Mount Cover", "vendor": {
"description": "Cover for the 3030 mount", "manifest_id": "ossm-pcb-3030-mount-cover",
"filamentEstimate": 15, "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - 3030 Mount Cover.stl",
"timeEstimate": "45m", "pinned_sha": null,
"colour": "primary", "pinned_raw_url": null,
"required": true, "checksum_sha256": null,
"filePath": "OSSM - PCB - 3030 Mount Cover.stl", "last_checked": null,
"url": "https://github.com/KinkyMakers/OSSM-hardware/blob/main/Printed%20Parts/PCB/OSSM%20-%20PCB%20-%203030%20Mount%20Cover.stl?raw=true", "status": "error"
"vendor": { }
"manifest_id": "ossm-pcb-3030-mount-cover", }
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/PCB/OSSM - PCB - 3030 Mount Cover.stl", ],
"pinned_sha": null, "hardwareParts": [
"pinned_raw_url": null, {
"checksum_sha256": null, "id": "hardware-fasteners-m6x12-shcs",
"last_checked": null, "required": true,
"status": "pending" "quantity": 4,
} "relatedParts": [
} "ossm-pcb-3030-mount"
],
"hardwareParts": [
{
"id": "hardware-fasteners-m6x12-shcs",
"required": true,
"quantity": 4,
"relatedParts": [
"ossm-pcb-3030-mount"
]
},
{
"id": "hardware-fasteners-m6-t-nuts",
"required": true,
"quantity": 4,
"relatedParts": [
"ossm-pcb-3030-mount"
]
}
] ]
} },
{
"id": "hardware-fasteners-m6-t-nuts",
"required": true,
"quantity": 4,
"relatedParts": [
"ossm-pcb-3030-mount"
]
}
]
}
} }

View File

@@ -21,11 +21,11 @@
"vendor": { "vendor": {
"manifest_id": "ossm-remote-body", "manifest_id": "ossm-remote-body",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Body.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Body.stl",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/OSSM - Remote - Body.stl",
"checksum_sha256": null, "checksum_sha256": "a0c3bb663a4bba6876a89c8e0dce81d0c6c673c9fc1f4537537000576f7f9e48",
"last_checked": null, "last_checked": "2026-01-07T23:41:14.337483+00:00",
"status": "error" "status": "up-to-date"
} }
}, },
{ {
@@ -41,11 +41,11 @@
"vendor": { "vendor": {
"manifest_id": "ossm-remote-top-cover", "manifest_id": "ossm-remote-top-cover",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Top Cover.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Top Cover.stl",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/OSSM - Remote - Top Cover.stl",
"checksum_sha256": null, "checksum_sha256": "890a6b117dc6fd306b7523838ad81ae32ad4e642c90179a58d9f313b3f3c783e",
"last_checked": null, "last_checked": "2026-01-07T23:41:26.173698+00:00",
"status": "error" "status": "up-to-date"
} }
} }
], ],
@@ -63,11 +63,11 @@
"vendor": { "vendor": {
"manifest_id": "ossm-remote-knob", "manifest_id": "ossm-remote-knob",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Knob - Rounded.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/OSSM - Remote - Knob - Rounded.stl",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/OSSM - Remote - Knob - Rounded.stl",
"checksum_sha256": null, "checksum_sha256": "3dcf73220cecd534ea9db0d991cec1001b4495f0b9d98f71f5b0b8c68b780439",
"last_checked": null, "last_checked": "2026-01-07T23:41:15.320622+00:00",
"status": "error" "status": "up-to-date"
} }
}, },
{ {
@@ -102,11 +102,11 @@
"vendor": { "vendor": {
"manifest_id": "ossm-remote-knob-simple-with-position-indicator", "manifest_id": "ossm-remote-knob-simple-with-position-indicator",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Simple With Position Indicator.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Simple With Position Indicator.stl",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Simple With Position Indicator.stl",
"checksum_sha256": null, "checksum_sha256": "b1816680cc49d5afe57b5d4f5dabab56b5446a429d43c94d184892365bfa9330",
"last_checked": null, "last_checked": "2026-01-07T23:41:21.935568+00:00",
"status": "error" "status": "up-to-date"
} }
}, },
{ {
@@ -121,11 +121,11 @@
"vendor": { "vendor": {
"manifest_id": "ossm-remote-knob-knurled", "manifest_id": "ossm-remote-knob-knurled",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled.stl",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled.stl",
"checksum_sha256": null, "checksum_sha256": "43f68e9467d4da82e6e9aaa545e9d9eda19ef60f8173ccd7fab7fa0835e770d4",
"last_checked": null, "last_checked": "2026-01-07T23:41:16.349140+00:00",
"status": "error" "status": "up-to-date"
} }
}, },
{ {
@@ -140,11 +140,11 @@
"vendor": { "vendor": {
"manifest_id": "ossm-remote-knob-knurled-with-position-indicator", "manifest_id": "ossm-remote-knob-knurled-with-position-indicator",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled With Position Indicator.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled With Position Indicator.stl",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Remote/Non-standard/OSSM - Remote - Knob - Knurled With Position Indicator.stl",
"checksum_sha256": null, "checksum_sha256": "4d06b58617b70633610c4d6fc8441eff45e751b904d7b0ecd442ea97a8bfa2a6",
"last_checked": null, "last_checked": "2026-01-07T23:41:17.344170+00:00",
"status": "error" "status": "up-to-date"
} }
} }
], ],

View File

@@ -23,11 +23,11 @@
"vendor": { "vendor": {
"manifest_id": "pivot-plate", "manifest_id": "pivot-plate",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Left.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Left.stl",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Left.stl",
"checksum_sha256": null, "checksum_sha256": "44a5527b613743acc394e4a6dfe89677d37c2e1c8a1537e76184812edbba0216",
"last_checked": null, "last_checked": "2026-01-07T09:38:41.826563+00:00",
"status": "error" "status": "up-to-date"
} }
}, },
{ {
@@ -43,11 +43,11 @@
"vendor": { "vendor": {
"manifest_id": "pivot-plate-right", "manifest_id": "pivot-plate-right",
"local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Right.stl", "local_path": "vendor/KinkyMakers-OSSM-hardware/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Right.stl",
"pinned_sha": null, "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": null, "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Pivot Plate Right.stl",
"checksum_sha256": null, "checksum_sha256": "20fba186fd8c50f08b35d57c354e62288d582ad283aa474ee271b27f08aa972a",
"last_checked": null, "last_checked": "2026-01-07T10:37:58.707054+00:00",
"status": "error" "status": "up-to-date"
} }
}, },
{ {
@@ -66,7 +66,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Handle Spacer.stl",
"checksum_sha256": "55ede7dff60a31d68159b352b5f2c63792b7a0dbe9d543a43681c3e52d229115", "checksum_sha256": "55ede7dff60a31d68159b352b5f2c63792b7a0dbe9d543a43681c3e52d229115",
"last_checked": "2026-01-07T06:30:07.525364+00:00", "last_checked": "2026-01-07T23:40:52.301339+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
} }
@@ -187,7 +187,7 @@
"pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab", "pinned_sha": "52537c0896eaef83fd9771dcc633903c7aa6a8ab",
"pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Extrusion Cap.stl", "pinned_raw_url": "https://raw.githubusercontent.com/KinkyMakers/OSSM-hardware/52537c0896eaef83fd9771dcc633903c7aa6a8ab/Printed Parts/Stand/OSSM - Stand - 3030 Extrusion Base - Extrusion Cap.stl",
"checksum_sha256": "56fa9bb318cdeadc6d1698a1e6cef9371e58b0bc9c7729985bf639d8da2f25da", "checksum_sha256": "56fa9bb318cdeadc6d1698a1e6cef9371e58b0bc9c7729985bf639d8da2f25da",
"last_checked": "2026-01-07T06:30:11.578686+00:00", "last_checked": "2026-01-07T23:40:56.344743+00:00",
"status": "up-to-date" "status": "up-to-date"
} }
} }

View File

@@ -17,7 +17,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -37,7 +37,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -57,7 +57,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -77,7 +77,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -97,7 +97,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -117,7 +117,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -137,7 +137,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -157,7 +157,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -177,7 +177,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
}, },
{ {
@@ -197,7 +197,7 @@
"pinned_raw_url": null, "pinned_raw_url": null,
"checksum_sha256": null, "checksum_sha256": null,
"last_checked": null, "last_checked": null,
"status": "pending" "status": "error"
} }
} }
], ],