First build parts
This page lists each file that the first build prints, and each reference file that its fit checks load. The first
build is Fuselage C v2.4B. The list comes from three sources: the Fuselage C bed plan (tools/slice_all.py --fusC,
th-main), the bench and test beds that stay in use, and the v2.4B fit checks. tools/parts_ledger.py writes this
page and parts/first-build-v24b.json. The JSON file has the same data, with the full md5 and the bounds of each
file. th-blender keeps this page.
A file in parts/ that is not on this page is not part of the first build. Do not print it. The files in
parts/retired/ and parts/review/retired/ are from old eras of the design. Never print from these folders.
Counts: 144 printed files (95 for the first build, 4 queued, 40 bench, 3 for the pod ESC path, 2 test-print source), 20 print aids, 61 references and 34 files in parts/test-prints/. 0 promoted parts wait for a bed, and 9 superseded files are out. 17 retired files are listed under Retired. 32 files are in a stale frame.
Use the list
Section titled “Use the list”- Find the file of the part in the tables below before you print it.
- Do a check of each file against the ledger:
uv run --no-project --with trimesh --with numpy --with scipy --with networkx --with rtree python tools/parts_ledger.py --check. The check must report that each path resolves and each md5 agrees. - If the check reports a changed md5, write the ledger again (
tools/parts_ledger.pywith no option) after the part owner promotes the change. Then do the check again. - Print each part from the bed in the Beds column. The slicer turns the part onto the print face in the table.
Frames
Section titled “Frames”| Frame | Meaning |
|---|---|
| assembly | X port, Y aft from the nose datum, Z up, in mm. The file is where the part flies. |
| The file is on its print face, with its corner at the origin. | |
| bench (own frame) | A bench tool in its own frame. |
| stale-frame | The file is in the Fuselage B and C v2.3 nose stations. On v2.4B the part flies 6 mm forward (Y -6.0). The v2.4B tools move it when they load it (fuselage_c_v24._moved). A translation does not change a print, so the file prints correctly. Do not use its coordinates for a v2.4B fit without the move. |
| kit-tail | The file is at the station of the kit Tail Pusher. On Fuselage C the part flies 40 mm aft (Y +40, fuselage_c_parts.EXT). The C tools move it when they load it. |
| part frame | The file is in a frame of its own. The JSON file’s frame_note gives the frame and the transform that places it. |
First build: the Fuselage C v2.4B beds
Section titled “First build: the Fuselage C v2.4B beds”| File | Material | Beds | Print face (normal, mm2) | Generator | Frame | md5 | Last commit |
|---|---|---|---|---|---|---|---|
parts/Wing Tip (own section) (C v2.4B).stl |
LW-PLA | g01 | (-1, 0, 0) largest flat, 523.1 mm2 | make_wing_own.py |
assembly | db2df639 |
8bd3bea6 |
parts/Fuselage C v2.4B Front.stl |
LW-PLA | g02 (re-slice pending th-main: sliced from 8cadf4cd, W117 (the static line clip’s two dowel holes on the upper starboard wall); W127.1 (the Walksnail notches: the starboard one moved to (-18, 74), the port one grown; the mark to rev C) changed it) | (0, 1, 0) override, 5349.7 mm2 | fuselage_c_parts.py --v24b |
assembly | db01fb77 |
88ac2c95 |
parts/Fuselage C v2.4B Bay.stl |
LW-PLA | g03 (re-slice pending th-main: sliced from bb1d9f8c, W122 (the RP4TD pigtail tie bars’ four dowel holes; the mark to rev B) changed it) | (0, -1, 0) override, 3896.1 mm2 | fuselage_c_parts.py --v24b |
assembly | 2b6e5d06 |
6377d401 |
parts/Fuselage C v2.4B VTOL Section (port).stl |
LW-PLA | g04 | (-1, 0, 0) largest flat, 4281.9 mm2 | fuselage_c_parts.py --v24b |
assembly | 9645bf74 |
8bd3bea6 |
parts/Fuselage C v2.4B VTOL Section (starboard).stl |
LW-PLA | g05 | (1, 0, 0) largest flat, 4281.9 mm2 | fuselage_c_parts.py --v24b |
assembly | e0a762f1 |
8bd3bea6 |
parts/Wing Inner (own section) (C v2.4B).stl |
LW-PLA | g06 | (-1, 0, 0) largest flat, 1463.6 mm2 | make_wing_own.py --fence-slot |
assembly | 19e42dd8 |
8bd3bea6 |
parts/Wing Inner (own section) (C v2.4B) (starboard).stl |
LW-PLA | g06 | (1, 0, 0) largest flat, 1463.6 mm2 | make_wing_own.py --fence-slot |
assembly | 73ce7670 |
8bd3bea6 |
parts/Wing Outer (own section) (C v2.4B).stl |
LW-PLA | g07 | (-1, 0, 0) largest flat, 1079.4 mm2 | make_wing_own.py --fence-slot |
assembly | 313f87c3 |
8bd3bea6 |
parts/Wing Outer (own section) (C v2.4B) (starboard).stl |
LW-PLA | g07 | (1, 0, 0) largest flat, 1079.4 mm2 | make_wing_own.py --fence-slot |
assembly | 774d5dd1 |
8bd3bea6 |
parts/Elevon (own section) (C v2.4B).stl |
LW-PLA | g08 | (-1, 0, 0) largest flat, 264.3 mm2 | make_wing_own.py |
assembly | 25536bca |
851d43db |
parts/Elevon (own section) (C v2.4B) (starboard).stl |
LW-PLA | g08 | (1, 0, 0) largest flat, 264.3 mm2 | make_wing_own.py |
assembly | 6760f00e |
851d43db |
parts/Fuselage C v2.4B Hatch.stl |
LW-PLA | g09 | (0, 1, 0) override, 1349.2 mm2 | fuselage_c_parts.py --v24b |
assembly | 62caefe5 |
8bd3bea6 |
parts/Fuselage C v2.4B Tail.stl |
LW-PLA | g10 | (0, -1, 0) override, 2368 mm2 | fuselage_c_parts.py --v24b |
assembly | 95c81ac1 |
756d71bf |
parts/Nose Cone (C v2.4B, ours).stl |
LW-PLA | g10 | (0, 1, 0) largest flat, 755.2 mm2 | make_pitot_saddle_c.py |
stale-frame (-6) | 197398cc |
888383ba |
parts/Wing Tip (own section) (C v2.4B) (starboard).stl |
LW-PLA | g10 | (1, 0, 0) largest flat, 523.1 mm2 | make_wing_own.py |
assembly | da842e8f |
8bd3bea6 |
parts/Pusher Motor Mount (C v2.4B, ours).stl |
PETG | g11 | (0, 1, 0) largest flat, 759.7 mm2 | make_pusher_mount_c.py |
assembly | 4e14dcd8 |
8bd3bea6 |
parts/Wing Clip (C v2.4B, ours).stl |
PETG | g11 | (0, 1, 0) override, 145.4 mm2 | make_wing_clip_c.py |
assembly | ba872bf0 |
851d43db |
parts/Wing Clip (C v2.4B, ours) (starboard).stl |
PETG | g11 | (0, 1, 0) override, 145.4 mm2 | make_wing_clip_c.py |
assembly | 512ef64c |
851d43db |
parts/Landing Light Frame (C v2.4B).stl |
PETG | g11 | (0, 0, -1) largest flat, 899 mm2 | make_lights.py --v24b |
assembly | edd5542d |
b23afe2e |
parts/Strobe Plate (C v2.4B).stl |
PETG | g11 | (0, 0, -1) largest flat, 1216.7 mm2 | make_lights.py --v24b |
assembly | 89fb1fc7 |
de83ad68 |
parts/Strobe Ring (top) (C v2.4B) [print foot].stl |
PETG | g11 | (0, 0, 1) largest flat, 3322.4 mm2 | c_print_aids.py --strobe-ring |
part frame | 4913938b |
23b80529 |
parts/Strobe Dome Buck (C v2.4B).stl |
PETG | g11 | (0, 0, -1) largest flat, 2701.5 mm2 | make_lights.py --v24b |
assembly | ae4dddf2 |
de83ad68 |
parts/Nose Cone Plate (C v2.4B, ours).stl |
PETG | g12 | (0, 1, 0) override, 1336.9 mm2 | make_pitot_saddle_c.py |
stale-frame (-6) | 18f791b1 |
888383ba |
parts/Nose Ring Plate.stl |
PETG | g12 | (0, 1, 0) largest flat, 2051.1 mm2 | make_pitot_saddle_c.py --promote |
stale-frame (-6) | 5b6ab418 |
bfe8b920 |
parts/Fuselage C v2.4B VTOL Section Plate (PETG) (port).stl |
PETG | g12 | (-1, 0, 0) largest flat, 1990.5 mm2 | fuselage_c_parts.py --v24b |
assembly | 7f568b1f |
de83ad68 |
parts/Fuselage C v2.4B VTOL Section Plate (PETG) (starboard).stl |
PETG | g12 | (1, 0, 0) largest flat, 1990.5 mm2 | fuselage_c_parts.py --v24b |
assembly | 5b8c2c07 |
de83ad68 |
parts/Wing Inner Plate (C v2.4B, ours).stl |
PETG | g12 | (-1, 0, 0) largest flat, 1051.8 mm2 | make_wing_inner_plate_c.py |
assembly | 33fd75a8 |
851d43db |
parts/Wing Inner Plate (C v2.4B, ours) (starboard).stl |
PETG | g12 | (1, 0, 0) largest flat, 1051.8 mm2 | make_wing_inner_plate_c.py |
assembly | 5e439eca |
851d43db |
parts/Wing Fence (own section, X 445) (C v2.4B).stl |
PETG | g12 | (1, 0, 0) largest flat, 1463.6 mm2 | make_wing_own.py --fence-slot |
assembly | 6eee63e4 |
8bd3bea6 |
parts/Wing Fence (own section, X 445) (C v2.4B) (starboard).stl |
PETG | g12 | (-1, 0, 0) largest flat, 1463.6 mm2 | make_wing_own.py --fence-slot |
assembly | 44b31d04 |
8bd3bea6 |
parts/Battery Tray B (slide).stl |
PETG | g13 | (0, 0, -1) override, 12442.3 mm2 | make_cg_slider.py |
stale-frame (-6) | 12ff190a |
8bd3bea6 |
parts/Fuselage C v2.4B VTOL Spar Mount (PETG) (port).stl |
PETG | g13 | (0, 0.8211, -0.5708) override, 0 mm2 | fuselage_c_parts.py --v24b |
assembly | 6d922e1c |
8bd3bea6 |
parts/Fuselage C v2.4B VTOL Spar Mount (PETG) (starboard).stl |
PETG | g13 | (0, 0.8211, -0.5708) override, 0 mm2 | fuselage_c_parts.py --v24b |
assembly | f86c6802 |
8bd3bea6 |
parts/Antenna Slot Grommet (port).stl |
TPU | g14 (re-slice pending th-main: sliced from a0fc4378, W127.1 (W123’s curved hole and the stem’s seat, in the grown notch) changed it) | (0, -1, 0) largest flat, 69.1 mm2 | make_antenna_slot_seal.py |
stale-frame (-6) | 7a78f4f8 |
87655822 |
parts/Antenna Slot Grommet (starboard).stl |
TPU | g14 (re-slice pending th-main: sliced from 0b82e0c5, W127.1 (the new notch at (-18, 74): the skin it takes out, a curved hole, the stem’s seat) changed it) | (0, -1, 0) largest flat, 70.5 mm2 | make_antenna_slot_seal.py |
stale-frame (-6) | f596105d |
87655822 |
parts/Pusher Lead Grommet (TPU).stl |
TPU | g14 | (0, -1, 0) override, 47.1 mm2 | make_payload_bay.py |
kit-tail (+40) | bd8102bc |
27fe7a60 |
parts/Wire Window Cover (C v2.4B) (port).stl |
TPU | g14 | (-1, 0, 0) largest flat, 77.2 mm2 | fuselage_c_v24b.py --v24b --stage |
assembly | c0bf2795 |
de83ad68 |
parts/Wire Window Cover (C v2.4B) (starboard).stl |
TPU | g14 | (1, 0, 0) largest flat, 77.2 mm2 | fuselage_c_v24b.py --v24b --stage |
assembly | 0cc71618 |
de83ad68 |
parts/Light Battery Saddle (TPU) (C v2.4B, aft 8, lead forward).stl |
TPU | g14 | (0, 0, -1) largest flat, 2679 mm2 | fuselage_c_parts.py |
assembly | 5c623367 |
33e412a4 |
parts/Conduit Seal (C) (port).stl |
TPU | g14 | (-1, 0, 0) largest flat, 89 mm2 | make_conduit_seal.py --c |
assembly | a1b016b5 |
2232f1e4 |
parts/Conduit Seal (C) (starboard).stl |
TPU | g14 | (1, 0, 0) largest flat, 89 mm2 | make_conduit_seal.py --c |
assembly | fe641a61 |
2232f1e4 |
parts/Fuselage C v2.4B Lucid Edge Gaskets (TPU) [print flat].stl |
TPU | g14 | (0, 0, -1) largest flat, 112.7 mm2 | c_print_aids.py --gaskets |
b4592151 |
2232f1e4 |
|
parts/Charge Power Bracket.stl |
PETG | g15 | (-1, 0, 0) largest flat, 1318.6 mm2 | fuselage_c_parts.py |
stale-frame (-6) | 1c80d3d3 |
33e412a4 |
parts/Camera Arm.stl |
PETG | g15 | (0, 1, 0) override, 268.7 mm2 | part_marks.py |
stale-frame (-6) | 183a06ba |
8bd3bea6 |
parts/Radio Cradle Base (XIAO, nose).stl |
PETG | g15 | (0, 1, 0) largest flat, 330 mm2 | fuselage_c.py |
stale-frame (-6) | 97fd6df1 |
b9bb2d81 |
parts/Fuselage C v2.4B Canopy (PETG).stl |
PETG | g15 | (0, 1, 0) override, 98.1 mm2 | fuselage_c_parts.py --v24b |
assembly | bb282964 |
8bd3bea6 |
parts/Fuselage C v2.4B Beacon Carrier (PETG).stl |
PETG | g15 | (0, 0, -1) largest flat, 3777.3 mm2 | fuselage_c_parts.py --v24b |
assembly | 4c593fde |
8bd3bea6 |
parts/Airspeed Nose Bracket.stl |
PETG | g16 | (0, 1, 0) largest flat, 64.2 mm2 | make_airspeed_nose.py |
stale-frame (-6) | 68dc194b |
6a27d602 |
parts/Radio Cradle Lid (XIAO).stl |
PETG | g16 (re-slice pending th-main: sliced from 0fb4572a, W119 (the channel round 6.8 mm for 100 deg; the tab’s outer side cut back and chamfered) changed it) | (0, 0, 1) override, 361.6 mm2 | make_radio_cradle.py |
assembly | 7029b8c2 |
9baa3f8b |
parts/CG Slider (port).stl |
PETG | g16 | (0, 0, -1) override, 3902.7 mm2 | make_cg_slider.py |
stale-frame (-6) | 1527e7e4 |
8bd3bea6 |
parts/CG Slider (starboard).stl |
PETG | g16 | (0, 0, -1) override, 3514.4 mm2 | make_cg_slider.py |
stale-frame (-6) | 1573a40a |
8bd3bea6 |
parts/CG Slider Pinion.stl |
PETG | g16 | (0, 0, 1) largest flat, 33.4 mm2 | make_cg_slider.py |
stale-frame (-6) | 09fbab9f |
c3bbe215 |
parts/SMA Bulkhead Bracket (J2 single, port wall, split).stl |
PETG | g16 | (0, 1, 0) override, 315.5 mm2 | make_power_hub_mount.py |
stale-frame (-6) | 7885fece |
bdb0896e |
parts/Power Hub Pad (port wall).stl |
PETG | g16 | (1, 0, 0) override, 858.6 mm2 | hub_a_pad_mbec_w53.py |
stale-frame (-6) | e4a73524 |
8bd3bea6 |
parts/LoRa A Coax Clip (rise, port wall).stl |
PETG | g16 | (0, -1, 0) override, 110.1 mm2 | lora_a_rise_clip_w65.py |
assembly | c93e5fc5 |
4db6f753 |
parts/LoRa B Park Saddle (C v2.4B).stl |
PETG | g16 | (0, 1, 0) largest flat, 404.2 mm2 | make_lora_b_park_saddle.py |
assembly | 2cded80d |
6cc987a3 |
parts/Trim Bracket (C v2.4B).stl |
PETG | g16 | (0, 1, 0) largest flat, 237.2 mm2 | make_trim_stack.py --promote |
assembly | 83bf9a67 |
2ae77187 |
parts/Radio Pigtail Clip (port wall).stl |
PETG | g16 (re-slice pending th-main: sliced from c298d9a0, W119 (re-aimed on the CAB.697 route, W110’s dowel stations, the foot 10.0 aft) changed it) | (0.1437, 0.1543, -0.9775) largest flat, 148 mm2 | make_ufl_clip_w109.py |
assembly | 9454eea4 |
9baa3f8b |
parts/SMA Bulkhead Bracket (ELRS, Spar Box) (port).stl |
PETG | g16 | (0, -1, 0) largest flat, 298.8 mm2 | make_rp4td_brackets_w121.py --promote |
assembly | 4179bbdc |
08799381 |
parts/SMA Bulkhead Bracket (ELRS, Spar Box) (starboard).stl |
PETG | g16 | (0, -1, 0) largest flat, 298.8 mm2 | make_rp4td_brackets_w121.py --promote |
assembly | 64469172 |
08799381 |
parts/RP4TD Pigtail Tie Bar (Bay) (port).stl |
PETG | g16 | (0, 0, -1) largest flat, 137.6 mm2 | make_pigtail_ties_w122.py --promote |
assembly | 6db80790 |
6377d401 |
parts/RP4TD Pigtail Tie Bar (Bay) (starboard).stl |
PETG | g16 | (0, 0, -1) largest flat, 161.5 mm2 | make_pigtail_ties_w122.py --promote |
assembly | 1c24e939 |
6377d401 |
parts/Static Line Clip (starboard wall).stl |
PETG | g16 | (-0.8502, 0.5162, -0.1035) largest flat, 27.2 mm2 | make_static_clip_w117.py |
assembly | 744f4171 |
88ac2c95 |
parts/Servo Mount MD65MG (own wing) (C v2.4B).stl |
PETG | g16 | (-0.0118, 0.046, -0.9989) override, 443 mm2 | make_wing_own.py |
assembly | e61067be |
8bd3bea6 |
parts/Servo Mount MD65MG (own wing) (C v2.4B) (starboard).stl |
PETG | g16 | (0.0118, 0.046, -0.9989) override, 443 mm2 | make_wing_own.py |
assembly | e3475e24 |
8bd3bea6 |
parts/M10 Hanger (C v2.4B).stl |
PETG | g16 | (0, 0, -1) largest flat, 997.6 mm2 | m10_station_v24b.py |
assembly | cc1c6ad8 |
a5bd7623 |
parts/Fuselage C v2.4B Hatch Catch (PETG).stl |
PETG | g16 | (-1, 0, 0) override, 97.1 mm2 | fuselage_c_parts.py --v24b |
assembly | a8e59366 |
de83ad68 |
parts/Lights Node Seat Pad (C v2.4B, forward).stl |
PETG | g16 | (0, 1, 0) override, 391.1 mm2 | lights_node_pads_w48_3.py |
assembly | ef0a5909 |
adb1bc19 |
parts/Lights Node Seat Pad (C v2.4B, aft).stl |
PETG | g16 | (0, -1, 0) override, 267.1 mm2 | lights_node_pads_w48_3.py |
assembly | fb036218 |
8bd3bea6 |
parts/Fuselage C v2.4B Spar Box.stl |
LW-PLA | g20 (re-slice pending th-main: sliced from 6dbceada, W121 (the ELRS SMA brackets’ four dowel holes; the mark to rev B) changed it) | (0, -1, 0) override, 5485.6 mm2 | fuselage_c_parts.py --v24b |
assembly | 7ed7ee40 |
08799381 |
parts/Avionics Plate (LUX F765) (C v2.4B).stl |
PETG | g21 | (0, 0, -1) largest flat, 2648.3 mm2 | make_holders.py |
assembly | 77b61aaa |
117a460e |
parts/Q43 Seat (C v2.4B).stl |
PETG | g21 | (0, 0, -1) largest flat, 4209.4 mm2 | make_spar_box_stack.py --v24b |
assembly | 2c01fb8a |
86151370 |
parts/Fuselage C v2.4B Lucid Edge Bracket (PETG).stl |
PETG | g21 | (0, -1, 0) override, 1865.6 mm2 | lucid_edge_v24b.py |
assembly | e0702fa5 |
7bd6f79f |
parts/Lucid Caps Cradle (PETG) (C v2.4B).stl |
PETG | g21 | (0, 0, -1) largest flat, 230.4 mm2 | fuselage_c_v24b.py |
assembly | cfdf9b8d |
de83ad68 |
parts/Lucid Caps Cradle B (PETG) (C v2.4B).stl |
PETG | g21 | (-1, 0, 0) override, 121.1 mm2 | lucid_edge_v24b.py |
assembly | d0d77b5d |
de83ad68 |
parts/Fuselage C v2.4B Deck Pad (PETG) (port).stl |
PETG | g21 | (0, 0, 1) override, 149.8 mm2 | make_spar_box_stack.py --v24b |
assembly | 026e9060 |
de83ad68 |
parts/Fuselage C v2.4B Deck Pad (PETG) (starboard).stl |
PETG | g21 | (0, 0, 1) override, 149.8 mm2 | make_spar_box_stack.py --v24b |
assembly | f24b0533 |
de83ad68 |
parts/Fuselage C v2.4B Rim Frame (PETG) (port).stl |
PETG | g21 | (0, -1, 0) largest flat, 339.9 mm2 | fuselage_c_parts.py --v24b |
assembly | 6312ee56 |
8bd3bea6 |
parts/Fuselage C v2.4B Rim Frame (PETG) (starboard).stl |
PETG | g21 | (0, -1, 0) largest flat, 339.4 mm2 | fuselage_c_parts.py --v24b |
assembly | c0f68e5d |
8bd3bea6 |
parts/Fuselage C v2.4B Aria Tray (PETG).stl |
PETG | g21 | (0, -1, 0) override, 221.6 mm2 | aria_vent_v24b.py |
assembly | 0f1c7505 |
8bd3bea6 |
parts/Fuselage C v2.4B Payload Cover (blank) [print foot].stl |
ASA | g24 | (0, 1, 0) override, 945.8 mm2 | c_print_aids.py --v24b --blank |
assembly | ddb692b9 |
971f6531 |
parts/Position Light Window (tail) (C v2.4B).stl |
PETG | g23 | (0, 0, -1) largest flat, 109.2 mm2 | make_lights.py --v24b |
assembly | 07eb8e05 |
de83ad68 |
parts/Position Light Window (tip) (own section) (C v2.4B).stl |
PETG | g23 | (0, 0, -1) largest flat, 20.6 mm2 | make_wing_own.py |
part frame | 837dc114 |
28d08041 |
parts/Position Light Window (tip) (own section) (C v2.4B) (starboard).stl |
PETG | g23 | (0, 0, -1) largest flat, 20.6 mm2 | make_wing_own.py |
part frame | 9073ba25 |
28d08041 |
parts/Strobe Clip Ring (C v2.4B).stl |
PETG | g23 | (0, 0, 1) largest flat, 427.2 mm2 | make_lights.py --v24b |
assembly | 39d78840 |
de83ad68 |
parts/Keel B Mount (cable riser).stl |
PETG | g17 P (re-slice pending th-main: sliced from 26561e75, W116.1 changed it; HELD until th-telemetry’s NEC case passes) | (0, 0, -1) override, 766.6 mm2 | make_gear_b_print.py |
assembly | 0dceb866 |
1859b335 |
parts/Keel B Mount (cable riser) (starboard).stl |
PETG | g17 S (re-slice pending th-main: sliced from 7a87ddad, W116.1 changed it; HELD until th-telemetry’s NEC case passes) | (0, 0, -1) override, 766.6 mm2 | no writing tool names it (read by tools/parts_ledger.py, tools/slice_all.py) | assembly | d11083f8 |
1859b335 |
parts/Front Stilt B Mount (bolt pilot).stl |
PETG | g17 P, g17 S (mirrored) | (0, 0, -1) override, 112.5 mm2 | make_gear_b_print.py |
assembly | 24dfb059 |
030cc7e0 |
parts/Keel B Blade (antenna bay).stl |
LW-PLA | g18 P, g18 S (mirrored) (re-slice pending th-main: sliced from db896531, W116.1 changed it; HELD until th-telemetry’s NEC case passes) | (0, 0, 1) override, 766.6 mm2 | make_gear_b_print.py |
assembly | 539005b1 |
f28d1612 |
parts/Front Stilt B Blade (cored).stl |
LW-PLA | g18 P | (0, 0, 1) override, 112.5 mm2 | make_gear_b_print.py |
assembly | 5f356401 |
8bd3bea6 |
parts/Front Stilt B Blade (cored) (starboard).stl |
LW-PLA | g18 S | (0, 0, 1) override, 112.5 mm2 | no writing tool names it (read by tools/slice_all.py) | assembly | 72f788d2 |
8bd3bea6 |
parts/Antenna Cassette Lid (keel B).stl |
LW-PLA | g18 P (re-slice pending th-main: sliced from 5e74680b, W116.1 changed it; HELD until th-telemetry’s NEC case passes) | (1, 0, 0) override, 3381.2 mm2 | make_gear_b_print.py |
assembly | 2b7ffb87 |
5cec58a8 |
parts/Antenna Cassette Lid (keel B) (starboard).stl |
LW-PLA | g18 S (re-slice pending th-main: sliced from fa1c16d2, W116.1 changed it; HELD until th-telemetry’s NEC case passes) | (-1, 0, 0) override, 3381.2 mm2 | no writing tool names it (read by tools/parts_ledger.py, tools/slice_all.py) | assembly | 5150db63 |
5cec58a8 |
parts/Keel B Sole (bead boss).stl |
PETG | g19 P, g19 S (mirrored) | (0, 0, -1) override, 888.9 mm2 | make_gear_b_print.py |
assembly | f709ce56 |
00955e78 |
parts/Front Stilt B Sole.stl |
PETG | g19 P, g19 S (mirrored) | (0, 0, -1) override, 274 mm2 | make_stilt_b.py |
assembly | ddf1bb6a |
dbc70496 |
Queued: drawn for the first build, printed after a measurement
Section titled “Queued: drawn for the first build, printed after a measurement”| File | Material | Beds | Print face (normal, mm2) | Generator | Frame | md5 | Last commit |
|---|---|---|---|---|---|---|---|
parts/LoRa Coil Former (grooved).stl |
PETG | petg-LoRa Coil Formers (grooved) | (-1, 0, 0) largest flat, 364 mm2 | make_coil_tools.py |
assembly | e0684b3d |
48030b73 |
parts/LoRa Coil Former (grooved, starboard).stl |
PETG | petg-LoRa Coil Formers (grooved) | (1, 0, 0) largest flat, 364 mm2 | make_coil_tools.py |
assembly | 4e15676f |
48030b73 |
parts/Pitot Coupler (PETG).stl |
PETG | petg-Pitot Coupler | (0, 1, 0) override, 171.8 mm2 | make_pitot_side_c.py |
assembly | 58f17d94 |
60f05e70 |
parts/Pitot Coupler Seal, nipples (TPU).stl |
TPU | tpu-Pitot Coupler Seal | (0, 1, 0) override, 35.4 mm2 | make_pitot_coupler.py |
assembly | f34f697d |
12ee8832 |
Bench tools and test coupons
Section titled “Bench tools and test coupons”| File | Material | Beds | Print face (normal, mm2) | Generator | Frame | md5 | Last commit |
|---|---|---|---|---|---|---|---|
parts/Dowel Coupon.stl |
LW-PLA | lw-Dowel Coupon | (0, 0, -1) largest flat, 768 mm2 | make_dowel_coupon.py |
6ca5b3eb |
8bd3bea6 |
|
parts/Gear B Coupon Blade (LW).stl |
LW-PLA | lw-Gear B Coupon Blade | (0, 0, 1) override, 759.9 mm2 | make_gear_b_coupon.py |
bench (own frame) | a02b952f |
8bd3bea6 |
parts/Gear B Coupon Stub (PETG).stl |
PETG | petg-Gear B Coupon Stub and Load Block | (0, 0, -1) override, 759.9 mm2 | make_gear_b_coupon.py |
bench (own frame) | a918f4f6 |
8bd3bea6 |
parts/Gear B Coupon Load Block (PETG).stl |
PETG | petg-Gear B Coupon Stub and Load Block | (0, 0, -1) override, 1016.9 mm2 | make_gear_b_coupon.py |
bench (own frame) | 06d0bd2d |
8bd3bea6 |
parts/Coil Winder Mk2 Head Cheek.stl |
PLA | pla-Coil Winder Mk2 | (1, 0, 0) largest flat, 4067.4 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 62cee201 |
8bd3bea6 |
parts/Coil Winder Mk2 Tail Cheek.stl |
PLA | pla-Coil Winder Mk2 | (-1, 0, 0) largest flat, 4052 mm2 | make_coil_winder_mk2.py |
bench (own frame) | dd1c96e4 |
8bd3bea6 |
parts/Coil Winder Mk2 Crank Wheel.stl |
PLA | pla-Coil Winder Mk2 | (1, 0, 0) largest flat, 679.9 mm2 | make_coil_winder_mk2.py |
bench (own frame) | bd66a2ad |
6c2d87f5 |
parts/Coil Winder Mk2 Carriage.stl |
PLA | pla-Coil Winder Mk2 | (-1, 0, 0) override, 328.5 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 529d24b7 |
8bd3bea6 |
parts/Coil Winder Mk2 Spool Drum.stl |
PLA | pla-Coil Winder Mk2 | (1, 0, 0) largest flat, 339.8 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 964b48d4 |
3d4565d9 |
parts/Coil Winder Mk2 Tail Knob.stl |
PLA | pla-Coil Winder Mk2 | (-1, 0, 0) override, 180.2 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 7a8a7053 |
3d4565d9 |
parts/Coil Winder Mk2 Tail Hub.stl |
PLA | pla-Coil Winder Mk2 | (1, 0, 0) largest flat, 41.6 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 052a95ea |
02afe201 |
parts/Coil Winder Mk2 Head Hub.stl |
PLA | pla-Coil Winder Mk2 | (-1, 0, 0) largest flat, 41.6 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 981acc64 |
02afe201 |
parts/Coil Winder Mk2 Crank Handle.stl |
PLA | pla-Coil Winder Mk2 | (1, 0, 0) largest flat, 22.6 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 642efddf |
3d4565d9 |
parts/Coil Winder Mk2 Spool Cone.stl |
PLA | pla-Coil Winder Mk2 1, pla-Coil Winder Mk2 2 | (-1, 0, 0) largest flat, 681.4 mm2 | make_coil_winder_mk2.py |
bench (own frame) | d12e0983 |
3d4565d9 |
parts/Coil Winder Mk2 Base Beam.stl |
PLA | pla-Coil Winder Mk2 | (0, 0, -1) largest flat, 5299.8 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 0a9aa6f1 |
8bd3bea6 |
parts/Coil Winder Mk2 Spool Collar.stl |
PLA | pla-Coil Winder Mk2 | (-1, 0, 0) largest flat, 31.6 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 7050a97c |
83b37cec |
parts/Coil Winder Mk2 Turns Scale.stl |
PLA | pla-Coil Winder Mk2 Turns Scale (2 colour) | (0, 0, -1) largest flat, 1143.9 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 3c0c9786 |
8bd3bea6 |
parts/Coil Winder Mk2 Foot (TPU).stl |
TPU | tpu-Coil Winder Mk2 Feet and Brake Pads 1, tpu-Coil Winder Mk2 Feet and Brake Pads 2, tpu-Coil Winder Mk2 Feet and Brake Pads 3, tpu-Coil Winder Mk2 Feet and Brake Pads 4, tpu-Coil Winder Mk2 Feet and Brake Pads 5, tpu-Coil Winder Mk2 Feet and Brake Pads 6 | (0, 0, -1) largest flat, 98.5 mm2 | make_coil_winder_mk2.py |
bench (own frame) | d54ea542 |
f0130071 |
parts/Coil Winder Mk2 Brake Pad (TPU).stl |
TPU | tpu-Coil Winder Mk2 Feet and Brake Pads 1, tpu-Coil Winder Mk2 Feet and Brake Pads 2 | (-1, 0, 0) override, 17 mm2 | make_coil_winder_mk2.py |
bench (own frame) | c7886fc9 |
f0130071 |
parts/Coil Winder Mk2 Brake Pad +0.4 (TPU).stl |
TPU | tpu-Coil Winder Mk2 Feet and Brake Pads 1, tpu-Coil Winder Mk2 Feet and Brake Pads 2 | (-1, 0, 0) override, 18.3 mm2 | make_coil_winder_mk2.py |
bench (own frame) | 2379315c |
f0130071 |
parts/Antenna Groove Coupon (PETG) depth 0.45.stl |
PETG | petg-Antenna Groove Coupons | (0, 0, -1) largest flat, 309.7 mm2 | make_groove_coupon.py |
bench (own frame) | e4590a09 |
68bc62c8 |
parts/Antenna Groove Coupon (PETG) depth 0.55.stl |
PETG | petg-Antenna Groove Coupons | (0, 0, -1) largest flat, 165.5 mm2 | make_groove_coupon.py |
bench (own frame) | 5db2a1c2 |
68bc62c8 |
parts/Coil Winding Cradle Base.stl |
PLA | pla-Coil Winding Tools | (0, 0, -1) largest flat, 4656 mm2 | make_coil_tools.py |
bench (own frame) | 5b6ecbc5 |
8bd3bea6 |
parts/Coil Winding Thumbwheel.stl |
PLA | pla-Coil Winding Tools 1, pla-Coil Winding Tools 2 | (-1, 0, 0) largest flat, 407 mm2 | make_coil_tools.py |
bench (own frame) | aa8756e0 |
6dc74681 |
parts/Coil Winding Wire Guide.stl |
PLA | pla-Coil Winding Tools | (0, -1, 0) largest flat, 118.9 mm2 | make_coil_tools.py |
bench (own frame) | 4afae13e |
6dc74681 |
parts/ELRS Dipole Gauge.stl |
PLA | pla-Coil Winding Tools | (0, 0, -1) largest flat, 1094.4 mm2 | make_coil_tools.py |
bench (own frame) | 8063fd87 |
8bd3bea6 |
parts/GNSS Coupon Canopy Cup (PETG).stl |
PETG | petg-GNSS Coupon Canopy Cup | (0, 0, 1) largest flat, 3851.3 mm2 | make_gnss_coupons.py |
bench (own frame) | 79bad5f1 |
8bd3bea6 |
parts/GNSS Coupon Wall Panel (LW).stl |
LW-PLA | lw-GNSS Coupon Wall Panel | (0, 0, -1) largest flat, 6350.7 mm2 | make_gnss_coupons.py |
a5976d12 |
8bd3bea6 |
|
parts/VTOL Spar Jig Front (C v2.4B, ours).stl |
PETG | petg-VTOL Spar Jig | (0, 0, -1) largest flat, 632 mm2 | make_spar_jig_c.py |
bench (own frame) | 1105811d |
8bd3bea6 |
parts/VTOL Spar Jig Rear (C v2.4B, ours) (port).stl |
PETG | petg-VTOL Spar Jig | (0, 0, -1) largest flat, 5032 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | 6b01e027 |
8bd3bea6 |
parts/VTOL Spar Jig Rear (C v2.4B, ours) (starboard).stl |
PETG | petg-VTOL Spar Jig | (0, 0, -1) largest flat, 5032 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | 4d04edba |
8bd3bea6 |
parts/Strobe Window Jig Base (PETG).stl |
PETG | petg-Strobe Window Jig | (0, 0, -1) override, 1080 mm2 | make_window_jig.py |
bench (own frame) | 63d66a35 |
8bd3bea6 |
parts/Strobe Window Jig Press (PETG).stl |
PETG | petg-Strobe Window Jig | (0, 0, 1) override, 224 mm2 | make_window_jig.py |
bench (own frame) | 5a7df6ce |
8bd3bea6 |
parts/Keel B Jack Grip Coupon Blade (LW, grip 1.00).stl |
LW-PLA | lw-Keel B Jack Grip Coupon | (0, 0, 1) override, 45.9 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | 1d6ee9a7 |
030dc376 |
parts/Keel B Jack Grip Coupon Lid (LW, grip 1.00).stl |
LW-PLA | lw-Keel B Jack Grip Coupon | (1, 0, 0) override, 183.6 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | 86af1e2e |
030dc376 |
parts/Keel B Jack Grip Coupon Blade (LW, grip 1.05).stl |
LW-PLA | lw-Keel B Jack Grip Coupon | (0, 0, 1) override, 43.3 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | 86b571eb |
030dc376 |
parts/Keel B Jack Grip Coupon Lid (LW, grip 1.05).stl |
LW-PLA | lw-Keel B Jack Grip Coupon | (1, 0, 0) override, 182.9 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | 4e9310ca |
030dc376 |
parts/Keel B Jack Grip Coupon Blade (LW, grip 1.10).stl |
LW-PLA | lw-Keel B Jack Grip Coupon | (0, 0, 1) override, 40.7 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | 92f72f50 |
030dc376 |
parts/Keel B Jack Grip Coupon Lid (LW, grip 1.10).stl |
LW-PLA | lw-Keel B Jack Grip Coupon | (1, 0, 0) override, 182.2 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | 379ff244 |
030dc376 |
parts/Keel B Jack Grip Coupon Seat (PETG).stl |
PETG | petg-Keel B Jack Grip Coupon Seat | (1, 0, 0) override, 44.5 mm2 | no writing tool names it (read by tools/slice_all.py) | bench (own frame) | e614058c |
030dc376 |
The pod ESC path (not the first flights)
Section titled “The pod ESC path (not the first flights)”| File | Material | Beds | Print face (normal, mm2) | Generator | Frame | md5 | Last commit |
|---|---|---|---|---|---|---|---|
parts/S50 Pad.stl |
TPU | tpu-S50 Pads 1, tpu-S50 Pads 2, tpu-S50 Pads 3, tpu-S50 Pads 4 | (-1, 0, 0) largest flat, 691.4 mm2 | make_holders.py |
assembly | 21e0db11 |
9980ee04 |
parts/ESC Pod Cradle S50.stl |
PETG | petg-ESC Pod Cradles S50 P1, petg-ESC Pod Cradles S50 P2 | (0, -1, 0) override, 407.1 mm2 | make_esc_cradle.py |
assembly | 46ceabf8 |
ab2c4f47 |
parts/ESC Pod Cradle S50 (starboard).stl |
PETG | petg-ESC Pod Cradles S50 S1, petg-ESC Pod Cradles S50 S2 | (0, -1, 0) override, 407.1 mm2 | no writing tool names it (read by tools/slice_all.py) | assembly | be1abb0d |
ab2c4f47 |
Kit-derived sources of the test prints
Section titled “Kit-derived sources of the test prints”| File | Material | Beds | Print face (normal, mm2) | Generator | Frame | md5 | Last commit |
|---|---|---|---|---|---|---|---|
parts/Wing Outer (dowels).stl |
LW-PLA | (-1, 0, 0) override, 1038.3 mm2 | add_dowels.py |
assembly | b9e1c3d7 |
8bd3bea6 |
Out: superseded
Section titled “Out: superseded”A newer part replaces each of these files. The file stays in parts/ because the tools in the last column still
read it. Do not print it after th-main’s re-bed. A file that a bed still carries says so.
| File | Replaced by | Status | Read by | md5 |
|---|---|---|---|---|
parts/Elevon (one piece).stl |
Elevon (own section) (C v2.4B) | out: superseded by Elevon (own section) (C v2.4B); still on until th-main re-beds | TerraHawk (app).json, part-ids.json, blockers.json, airframe_stl.py, blender_materials.py, blender_scenes.py, export_app_glb.py, make_elevon_one_piece.py, slice_all.py | 8599cc72 |
parts/Wing Inner (dowels, light channel) (C v2.4B).stl |
Wing Inner (own section) (C v2.4B) | out: superseded by Wing Inner (own section) (C v2.4B) | make_lights.py, make_wing_clip_c.py | a0437690 |
parts/Wing Outer (dowels, light channel) (C v2.4B).stl |
Wing Outer (own section) (C v2.4B) | out: superseded by Wing Outer (own section) (C v2.4B) | make_lights.py | 219cf5ab |
parts/Wing Tip (flat, dowels, light) (C v2.4B).stl |
Wing Tip (own section) (C v2.4B) | out: superseded by Wing Tip (own section) (C v2.4B) | make_lights.py | 089de558 |
parts/Servo Mount MD65MG.stl |
Servo Mount MD65MG (own wing) (C v2.4B) | out: superseded by Servo Mount MD65MG (own wing) (C v2.4B) | TerraHawk (app).json, airframe_stl.py, blender_scenes.py, make_lights.py, make_servo_mount.py, make_wing_own.py, render_assembly_guide.py, slice_all.py | 69deebcc |
parts/Position Light Window (tip) (C v2.4B).stl |
Position Light Window (tip) (own section) (C v2.4B) | out: superseded by Position Light Window (tip) (own section) (C v2.4B) | make_lights.py, make_wing_own.py, slice_all.py, check.py | 6b164cc7 |
terrahawk-fpv-stl-pack-1.0.0/Wing Inner Plate.stl |
Wing Inner Plate (C v2.4B, ours) | out: superseded by Wing Inner Plate (C v2.4B, ours) | pages.mjs, parts.mdx, build-path.mdx, TerraHawk (app).json, airframe_stl.py, blender_materials.py, blender_scenes.py, joint_survey.py, make_wing_clip_c.py, make_wing_inner_plate_c.py, make_wing_own.py, make_wing_pitot_boom.py, render_assembly_guide.py, slice_all.py, test_prints.py, vtol_section_c.py | a5380bc5 |
terrahawk-fpv-stl-pack-1.0.0/Clip.stl |
Wing Clip (C v2.4B, ours) | out: superseded by Wing Clip (C v2.4B, ours) | pages.mjs, renders.mjs, make_logo.py, parts.mdx, build-path.mdx, TerraHawk (app).json, lights-mounts.json, part-ids.json, lights-mounts-v24b.json, radio-pigtail-clip-w109.json, static-line-clip-w117.json, w93-pitot-side.json, manifest.json, blender_scenes.py, fuselage_c_v24.py, fuselage_c_v24n.py, make_lights.py, make_pitot_side_c.py, make_static_clip_w117.py, make_ufl_clip_w109.py, make_wing_clip_c.py, make_wing_inner_plate_c.py, make_wing_own.py, part_marks.py, render_antenna_chain.py, render_assembly_guide.py, route_pigtail_w113.py, slice_all.py, test_prints.py, vtol_section_c.py, check.py | 01d47bf9 |
terrahawk-fpv-stl-pack-1.0.0/Clip Base.stl |
Wing Clip (C v2.4B, ours) | out: superseded by Wing Clip (C v2.4B, ours) | blender_scenes.py, make_wing_clip_c.py, make_wing_own.py, slice_all.py, vtol_section_c.py | bca657bc |
Retired
Section titled “Retired”A newer part replaces each of these files, and no bed and no first-build tool loads them. They are in
parts/retired/, one folder for each era. Never print them. The last column gives the tools that still name the part:
the old eras’ generators and figures read it from the retired folder, and fuselage_c.PRESENT keeps the old cone
and plate as the datum skin that Fuselage C’s body lines were fitted to.
| File | Replaced by | Retired | Named by | md5 |
|---|---|---|---|---|
parts/retired/fuselage-a-kit-era/Pusher Motor Mount (ribbed).stl |
Pusher Motor Mount (C v2.4B, ours) (W69) | W71 | fuselage_c.py, fuselage_c_3view.py, fuselage_c_parts.py, fuselage_c_v24b.py, make_pusher_mount.py, make_pusher_mount_c.py, slice_all.py | e3a5ffde |
parts/retired/fuselage-a-kit-era/Nose Cone (short).stl |
Nose Cone (C v2.4B, ours) (W69) | W71 | fuselage_c.py, fuselage_c_3view.py, fuselage_c_v24b.py, make_nose_cone_c.py, make_nose_split.py, make_pitot_saddle_c.py, show_nose_package.py, slice_all.py, space_map.py | 4c09fe7f |
parts/retired/fuselage-a-kit-era/Nose Cone Plate.stl |
Nose Cone Plate (C v2.4B, ours) (W69) | W71 | renders.mjs, parts.mdx, build-path.mdx, fuselage_c.py, fuselage_c_3view.py, fuselage_c_v24b.py, make_nose_cone_c.py, make_nose_split.py, make_pitot_side_c.py, render_assembly_guide.py, show_nose_package.py, slice_all.py, space_map.py | b8182522 |
parts/retired/fuselage-a-kit-era/Antenna Slot Plug (starboard).stl |
Antenna Slot Grommet (starboard) (th-main 8f782335 (g14)) | W71 | make_conduit_seal.py, slice_all.py | 62495500 |
parts/retired/pitot-top-w75/Pitot Saddle (C v2.4B).stl |
nothing: the tube rides in the cone unit (W93.2) (W93.2) | W93.2 | part-ids.json, airframe_stl.py, blender_scenes.py, make_nose_cone_c.py, make_pitot_saddle_c.py, make_pitot_side_c.py, render_antenna_chain.py | c258b489 |
parts/retired/pitot-top-w75/Pitot Saddle (C v2.4B) (port).stl |
nothing: the tube rides in the cone unit (W93.2) (W93.2) | W105 | part-ids.json, w75-pitot-top.json, make_pitot_saddle_c.py, make_pitot_side_c.py, w85_belly.py, w85_chin_tube.py | 6bd5966f |
parts/retired/pitot-top-w75/Pitot Saddle (C v2.4B) (starboard).stl |
nothing: the tube rides in the cone unit (W93.2) (W93.2) | W105 | part-ids.json, w75-pitot-top.json, make_conduit_seal.py, make_pitot_saddle_c.py, make_pitot_side_c.py, w85_chin_tube.py | 6a348708 |
parts/retired/pitot-top-w75/Pitot Static Cap (TPU) (C v2.4B).stl |
Pitot Static Plug (TPU) (C v2.4B) (W93.2) | W105 | part-ids.json, blender_scenes.py, fuselage_c_v24.py, fuselage_c_v24n.py, make_pitot_saddle_c.py, make_pitot_side_c.py, slice_all.py, build_chin.py, build_top.py, check.py, geo.py | e6c8cf09 |
parts/retired/pitot-top-w75/Pitot Static Cap (TPU).stl |
Pitot Static Plug (TPU) (C v2.4B) (W93.2) | W105 | part-ids.json, blender_scenes.py, fuselage_c_v24.py, fuselage_c_v24b.py, fuselage_c_v24n.py, make_pitot_coupler.py, make_pitot_saddle_c.py, make_pitot_side_c.py, show_nose_package.py, slice_all.py, check.py | 83f59660 |
parts/retired/pitot-top-w75/Pitot Coupler Seal, spigot (TPU).stl |
the coupler’s own barbed spigot and the 3 x 5 sleeve (W93.2) (W93.2) | W105 | part-ids.json, w72-pitot-out-of-frame.json, make_pitot_coupler.py, make_pitot_side_c.py, slice_all.py, check.py | 867c5496 |
parts/retired/pitot-top-w75/Pitot Static Cap (TPU) (C v2.4B, placed, reference).stl |
Pitot Static Plug (TPU) (C v2.4B, placed, reference) (W93.2) | W93.2 | part-ids.json, w75-pitot-top.json, blender_scenes.py, fuselage_c_v24.py, fuselage_c_v24n.py, make_pitot_saddle_c.py, make_pitot_side_c.py, slice_all.py, check.py | 072a57a3 |
parts/retired/pitot-top-w75/Pitot Line Elbow, brass 4 mm (C v2.4B, placed, reference).stl |
Pitot Total Sleeve, silicone 3 x 5 (C v2.4B, placed, reference) (W93.2) | W93.2 | w75-pitot-top.json, make_pitot_saddle_c.py, make_pitot_side_c.py | b142191d |
parts/retired/pitot-top-w75/Pitot Total Line, silicone 3 x 5 (C v2.4B, placed, reference).stl |
Pitot Total Sleeve, silicone 3 x 5 (C v2.4B, placed, reference) (W93.2) | W93.2 | w75-pitot-top.json, make_pitot_saddle_c.py, make_pitot_side_c.py | ed4a03a9 |
parts/retired/pitot-top-w75/Pitot Saddle Dowels (C v2.4B, placed, reference).stl |
nothing: the Cone Plate’s own dowels hold the unit (W93.2) (W93.2) | W93.2 | w75-pitot-top.json, make_pitot_saddle_c.py, make_pitot_side_c.py, render_antenna_chain.py | 82b61c29 |
parts/retired/kit-tube-w104/MS4525 Pitot (C v2.4B, reference).stl |
Own Total Tube 4 mm (C v2.4B, placed, reference) (W104) | W104 | w75-pitot-top.json, airframe_stl.py, blender_scenes.py, fuselage_c_v24.py, make_pitot_saddle_c.py, make_pitot_side_c.py, render_antenna_chain.py, route_walksnail_w123.py, check.py, fig.py, w85_belly.py, w85_chin_tube.py | e37e0167 |
parts/retired/kit-tube-w104/Pitot Static Plug (TPU) (C v2.4B).stl |
nothing: the own total-only tube has no static spigot (W104) (W104) | W104.1 (th-main dropped it from g14 in 20f1e126) | w102-plain-tube-3mm.json, w102-plain-tube.json, w104-own-tube.json, make_pitot_side_c.py | 20e3facf |
parts/retired/kit-tube-w104/Pitot Static Plug (TPU) (C v2.4B, placed, reference).stl |
nothing: the own total-only tube has no static spigot (W104) (W104) | W104 | make_pitot_side_c.py | 083ffc17 |
Print aids
Section titled “Print aids”The slicer attaches these files to a part as a modifier (slice_all.MODIFIERS). Do not print them.
| File | Type | For | md5 |
|---|---|---|---|
parts/Exit Duct Modifier (C v2.4B).stl |
ParameterModifier | Fuselage C v2.4B Front | 26d43db8 |
parts/Payload Bay Insert Modifier (C).stl |
ParameterModifier | Fuselage C v2.4B Bay | 6aa514ad |
parts/Aria Vent Modifier (C v2.4B).stl |
ParameterModifier | Fuselage C v2.4B Bay, Fuselage C v2.4B Tail | 6a799353 |
parts/print-aids/marks/Wing Inner (own section) (C v2.4B) mark blocker.stl |
SupportBlocker | Wing Inner (own section) (C v2.4B) | 5bc00d18 |
parts/print-aids/marks/Wing Inner (own section) (C v2.4B) (starboard) mark blocker.stl |
SupportBlocker | Wing Inner (own section) (C v2.4B) (starboard) | bf5d9867 |
parts/print-aids/marks/Wing Outer (own section) (C v2.4B) mark blocker.stl |
SupportBlocker | Wing Outer (own section) (C v2.4B) | 19e2b5a6 |
parts/print-aids/marks/Wing Outer (own section) (C v2.4B) (starboard) mark blocker.stl |
SupportBlocker | Wing Outer (own section) (C v2.4B) (starboard) | 301429ab |
parts/print-aids/marks/Fuselage C v2.4B Hatch mark blocker.stl |
SupportBlocker | Fuselage C v2.4B Hatch | 24127c39 |
parts/print-aids/Payload Cover (blank) [print foot] support enforcer.stl |
SupportEnforcer | Fuselage C v2.4B Payload Cover (blank) [print foot] | be031a24 |
parts/print-aids/marks/Battery Tray B (slide) mark blocker.stl |
SupportBlocker | Battery Tray B (slide) | da3d4aa3 |
parts/print-aids/marks/Fuselage C v2.4B VTOL Spar Mount (PETG) (port) mark blocker.stl |
SupportBlocker | Fuselage C v2.4B VTOL Spar Mount (PETG) (port) | ac4ed608 |
parts/print-aids/marks/Fuselage C v2.4B VTOL Spar Mount (PETG) (starboard) mark blocker.stl |
SupportBlocker | Fuselage C v2.4B VTOL Spar Mount (PETG) (starboard) | a7898409 |
parts/print-aids/marks/Camera Arm mark blocker.stl |
SupportBlocker | Camera Arm | 92be5e08 |
parts/print-aids/marks/Fuselage C v2.4B Canopy (PETG) mark blocker.stl |
SupportBlocker | Fuselage C v2.4B Canopy (PETG) | 44f89e77 |
parts/print-aids/marks/Fuselage C v2.4B Beacon Carrier (PETG) mark blocker.stl |
SupportBlocker | Fuselage C v2.4B Beacon Carrier (PETG) | 4b479eed |
parts/print-aids/marks/Fuselage C v2.4B Rim Frame (PETG) (port) mark blocker.stl |
SupportBlocker | Fuselage C v2.4B Rim Frame (PETG) (port) | e1613fcb |
parts/print-aids/marks/Fuselage C v2.4B Rim Frame (PETG) (starboard) mark blocker.stl |
SupportBlocker | Fuselage C v2.4B Rim Frame (PETG) (starboard) | 385a58c5 |
parts/print-aids/marks/Fuselage C v2.4B Aria Tray (PETG) mark blocker.stl |
SupportBlocker | Fuselage C v2.4B Aria Tray (PETG) | 2ca745b9 |
parts/print-aids/marks/Keel B Mount (cable riser) mark blocker.stl |
SupportBlocker | Keel B Mount (cable riser) | 7bce48b7 |
parts/print-aids/marks/Keel B Mount (cable riser) (starboard) mark blocker.stl |
SupportBlocker | Keel B Mount (cable riser) (starboard) | 74ce76d0 |
References
Section titled “References”The fit checks, the stage and the scenes load these files. They do not print. The flight pack has no file: the
v2.4B stage draws it as a box in Fuselage C v2.4B moved parts (reference). The Q43 and the LUX F765 are in
Fuselage C v2.4B internals (reference).
| File | Frame | Why it is here | md5 |
|---|---|---|---|
parts/Avionics Plate (LUX F765) (C v2.4B) Load (reference).stl |
assembly | own reference; v2.4B fit checks: render_assembly_guide.py, show_c_first_build.py (for Avionics Plate (LUX F765) (C v2.4B)) | 116cc761 |
parts/CG Slider Sensor (reference).stl |
stale-frame (-6) | v2.4B fit checks: fuselage_c_v24b.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 5d272176 |
parts/CG Slider Servo (reference).stl |
stale-frame (-6) | v2.4B fit checks: fuselage_c_v24b.py, lucid_on_edge_v24b.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 70025f16 |
parts/CG Slider Stop Pin (reference).stl |
stale-frame (-6) | v2.4B fit checks: render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 96d32ae8 |
parts/EMAX ECO II 3115 (reference).stl |
kit-tail (+40) | v2.4B fit checks: aria_vent_v24b.py, m10_station_v24b.py, render_assembly_guide.py, show_c_first_build.py | 0a931c9e |
parts/Filament Dowels (nose, placed, reference).stl |
stale-frame (-6) | v2.4B fit checks: make_pitot_side_c.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | b33b351a |
parts/Fuselage C v2.4B Aria Tray Load (reference).stl |
assembly | v2.4B fit checks: aria_vent_v24b.py, m10_station_v24b.py, render_assembly_guide.py, show_c_first_build.py | fee3248c |
parts/Fuselage C v2.4B Lucid Edge Gaskets (TPU).stl |
assembly | placed form (for Fuselage C v2.4B Lucid Edge Gaskets (TPU) [print flat]) | 2d5b4067 |
parts/Fuselage C v2.4B Lucid Edge Leads (reference).stl |
assembly | v2.4B fit checks: lucid_edge_v24b.py, render_assembly_guide.py, show_c_first_build.py | 4870ad4b |
parts/Fuselage C v2.4B Lucid Edge Spacers (PETG, reference).stl |
assembly | v2.4B fit checks: lucid_edge_v24b.py, render_assembly_guide.py, show_c_first_build.py | e74e8b60 |
parts/Fuselage C v2.4B Lucid Heat Plate (reference).stl |
assembly | v2.4B fit checks: lucid_edge_v24b.py, render_assembly_guide.py, show_c_first_build.py | 5cd5bcd3 |
parts/Fuselage C v2.4B Payload Cover (blank).stl |
assembly | placed form (for Fuselage C v2.4B Payload Cover (blank) [print foot]) | 2b9d7dff |
parts/Fuselage C v2.4B pusher leads (reference).stl |
assembly | v2.4B fit checks: aria_vent_v24b.py, m10_station_v24b.py, show_c_first_build.py | 56325e73 |
parts/Keel B Antennas (reference).stl |
assembly | v2.4B fit checks: m10_station_v24b.py | 50aa5dc3 |
parts/Keel B Strobe Tabs (placed, reference).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | 98df6227 |
parts/LUX F765 Board (reference).stl |
assembly | v2.4B fit checks: make_spar_box_stack.py, render_assembly_guide.py, show_c_first_build.py | ce0d726d |
parts/Landing Light Plate 40x40x3.2 (frame coordinates, reference) (C v2.4B).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | 0bc81976 |
parts/Light Battery 2S 1300 (C v2.4B, aft 8, lead forward, reference).stl |
assembly | v2.4B fit checks: lights_node_pads_w48_3.py, lights_node_stepped_w61.py, lucid_on_edge_v24b.py, render_assembly_guide.py, show_c_first_build.py | bcbb5357 |
parts/Light Battery Strap (reference).stl |
stale-frame (-6) | v2.4B fit checks: light_battery_aft8_w49.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 749a988d |
parts/Lights (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: aria_vent_v24b.py, render_assembly_guide.py, show_c_first_build.py | 2c1c8c33 |
parts/Lights Cutters (C v2.4B, reference).stl |
assembly | v2.4B fit checks: aria_vent_v24b.py | 2b210b3e |
parts/Lights Node 97.5 x 31 (C v2.4B, reference).stl |
assembly | v2.4B fit checks: lights_node_pads_w48_3.py, lights_node_stepped_w61.py | afb7c799 |
parts/Lights Node Stepped 106 x 41 (C v2.4B, reference).stl |
assembly | v2.4B fit checks: lights_node_stepped_w61.py, render_assembly_guide.py, show_c_first_build.py | 0964e1bc |
parts/Lucid 4-in-1 (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: fuselage_c_v24b.py, lucid_edge_v24b.py, render_assembly_guide.py, show_c_first_build.py | f166180a |
parts/Lucid Caps 100uF x3 (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: fuselage_c_v24b.py, lucid_edge_v24b.py, show_c_first_build.py | cf994128 |
parts/MD65MG (own wing) (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | 628d5dcd |
parts/MD65MG (reference).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | bcfa3d11 |
parts/MS4525 Board (reference).stl |
stale-frame (-6) | v2.4B fit checks: make_pitot_side_c.py, show_c_first_build.py; v2.4B moved family (placed at load) | 4d5cf271 |
parts/Matek Micro BEC 6S x2 (C v2.4B, reference).stl |
assembly | v2.4B fit checks: hub_a_pad_mbec_w53.py, render_assembly_guide.py, show_c_first_build.py | da23c349 |
parts/Matek Power Hub V2.1 (reference).stl |
stale-frame (-6) | v2.4B fit checks: hub_a_pad_mbec_w53.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 77384caa |
parts/Nose Cone Dowels (C v2.4B, ours, placed, reference).stl |
stale-frame (-6) | v2.4B fit checks: make_pitot_side_c.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 58541981 |
parts/Nose Magnets (placed, reference).stl |
stale-frame (-6) | v2.4B fit checks: make_pitot_side_c.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | d2ab6c13 |
parts/Own Total Tube 4 mm (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: make_pitot_side_c.py, render_assembly_guide.py, route_walksnail_w127_build.py, show_c_first_build.py. pitot-tube’s part, NOT a printed part: K&S 4 x 0.45 brass, open square face with a 30 deg internal chamber, a soldered 6 x 1.5 collar 55.72 mm from the face; built from the pitot-tube project (its commit 89e02ff, 2026-10-19), HANDOFF 3.6 is the cut list; the file is that repo’s terrahawk_total_4mm_posed.stl, posed where it flies (W102, W104) | 3419de69 |
parts/Pitot Coupler Seals (placed, reference).stl |
assembly | v2.4B fit checks: make_pitot_side_c.py, show_c_first_build.py | f34f697d |
parts/Pitot Total Sleeve, silicone 3 x 5 (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: make_pitot_side_c.py, render_assembly_guide.py, show_c_first_build.py | 2a3ff6bd |
parts/Power Hub Cap 470uF (port, reference).stl |
stale-frame (-6) | v2.4B fit checks: hub_a_pad_mbec_w53.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 32d038c8 |
parts/Power Hub Standoffs (nylon M3, reference).stl |
stale-frame (-6) | v2.4B fit checks: hub_a_pad_mbec_w53.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 764fe66b |
parts/Q43 Copper Floor (C v2.4B, FR4, reference).stl |
assembly | v2.4B fit checks: fuselage_c_v24b.py, lucid_edge_v24b.py, lucid_on_edge_v24b.py, render_assembly_guide.py, show_c_first_build.py | 33fd0b87 |
parts/RG316 LoRa A Route (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: fuselage_c_v24b.py | 1585612b |
parts/Radio Cradle Lid (XIAO, nose, placed reference).stl |
stale-frame (-6) | v2.4B fit checks: make_pitot_side_c.py, render_assembly_guide.py, route_walksnail_w127_build.py, show_c_first_build.py; v2.4B moved family (placed at load) | 87bbe960 |
parts/Radio Pigtail (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: make_pitot_side_c.py | 9eeecee6 |
parts/SEQURE M10-25Q (C v2.4B, reference).stl |
assembly | v2.4B fit checks: aria_vent_v24b.py, fuselage_c_v24b.py, m10_station_v24b.py, make_spar_box_stack.py, render_assembly_guide.py, show_c_first_build.py | 4e0f5c1a |
parts/SMA Bulkhead and Plug (J2 single, port, split, reference).stl |
stale-frame (-6) | v2.4B fit checks: render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 0df05b7e |
parts/SMA Plug and Load (LoRa B park, C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | ee5a026b |
parts/Static Lines, nose ports (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: make_pitot_side_c.py, route_walksnail_w127_build.py, show_c_first_build.py | 5d19e24f |
parts/Static Port Tubes (placed, reference).stl |
stale-frame (-6) | v2.4B fit checks: make_pitot_side_c.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 23302be8 |
parts/Strobe Disc 40x2 (ring frame, reference) (C v2.4B).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | 085d3622 |
parts/Strobe Dome (clear, 40 mm, reference) (C v2.4B).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | 225ddc6a |
parts/Strobe Ring (top) (C v2.4B).stl |
part frame | placed form (for Strobe Ring (top) (C v2.4B) [print foot]) | a889eb19 |
parts/Trim Row, 1 washer (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | d6cf758c |
parts/USB-C Pigtail (LUX, C v2.4B, reference).stl |
assembly | v2.4B fit checks: lucid_edge_v24b.py, render_assembly_guide.py, show_c_first_build.py | c2771757 |
parts/Walksnail Antenna Leads, Stems and Heads (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: route_walksnail_w127_build.py | ab4650c3 |
parts/Walksnail Camera (reference).stl |
stale-frame (-6) | v2.4B fit checks: make_pitot_side_c.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load). drawn tilted 15 deg down about its cheek screws (nose (0, 26.5, 2.5)) since W104, as it flies | 1dd55d0f |
parts/Walksnail VTX (reference).stl |
stale-frame (-6) | v2.4B fit checks: m10_station_v24b.py, make_pitot_side_c.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | 23886e0d |
parts/Walksnail VTX Harness Lane (C v2.4B, placed, reference).stl |
assembly | v2.4B fit checks: route_walksnail_w127_build.py | d87ed7eb |
parts/Wing Clip Dowels (C v2.4B, ours, placed, reference).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | 04110361 |
parts/Wing Inner Plate Dowels (C v2.4B, ours, placed, reference).stl |
assembly | v2.4B fit checks: render_assembly_guide.py | aa655b7c |
parts/XIAO ESP32S3 + Wio-SX1262 (nose, reference).stl |
stale-frame (-6) | v2.4B fit checks: m10_station_v24b.py, render_assembly_guide.py, show_c_first_build.py; v2.4B moved family (placed at load) | af5349f3 |
parts/review/Lights Node Stepped (C v2.4B, reference, review).stl |
assembly | v2.4B fit checks: lights_node_stepped_w61.py | 97255b27 |
parts/review/MS4525 Pitot (C v2.4B, reference).stl |
assembly | v2.4B fit checks: make_pitot_saddle_c.py, make_pitot_side_c.py | e37e0167 |
parts/review/PM02 V3 (reference).stl |
assembly | v2.4B fit checks: render_assembly_guide.py, show_c_first_build.py | ecede49f |
Newer drafts that are not promoted
Section titled “Newer drafts that are not promoted”The file in parts/review/ with the same name is not the file in parts/. The beds print the file in parts/.
The part owner must promote the draft or withdraw it.
| File in parts/ | md5 | Draft in parts/review/ | md5 |
|---|---|---|---|
parts/Fuselage C v2.4B Front.stl |
db01fb77 |
parts/review/Fuselage C v2.4B Front.stl |
914b3c6f |
parts/Fuselage C v2.4B VTOL Section (port).stl |
9645bf74 |
parts/review/Fuselage C v2.4B VTOL Section (port).stl |
27423f36 |
parts/Fuselage C v2.4B VTOL Section (starboard).stl |
e0a762f1 |
parts/review/Fuselage C v2.4B VTOL Section (starboard).stl |
c5bdbaf6 |
parts/Fuselage C v2.4B Hatch.stl |
62caefe5 |
parts/review/Fuselage C v2.4B Hatch.stl |
591dbdf8 |
parts/Pusher Motor Mount (C v2.4B, ours).stl |
4e14dcd8 |
parts/review/Pusher Motor Mount (C v2.4B, ours).stl |
b3338586 |
parts/Fuselage C v2.4B VTOL Spar Mount (PETG) (port).stl |
6d922e1c |
parts/review/Fuselage C v2.4B VTOL Spar Mount (PETG) (port).stl |
e801b67d |
parts/Fuselage C v2.4B VTOL Spar Mount (PETG) (starboard).stl |
f86c6802 |
parts/review/Fuselage C v2.4B VTOL Spar Mount (PETG) (starboard).stl |
a69dc931 |
parts/Fuselage C v2.4B Beacon Carrier (PETG).stl |
4c593fde |
parts/review/Fuselage C v2.4B Beacon Carrier (PETG).stl |
c7257baf |
parts/Fuselage C v2.4B Spar Box.stl |
7ed7ee40 |
parts/review/Fuselage C v2.4B Spar Box.stl |
b47a58c5 |
parts/Fuselage C v2.4B Rim Frame (PETG) (port).stl |
6312ee56 |
parts/review/Fuselage C v2.4B Rim Frame (PETG) (port).stl |
bdbf6d1b |
parts/Coil Winder Mk2 Head Cheek.stl |
62cee201 |
parts/review/Coil Winder Mk2 Head Cheek.stl |
432e9f70 |
parts/Coil Winder Mk2 Tail Cheek.stl |
dd1c96e4 |
parts/review/Coil Winder Mk2 Tail Cheek.stl |
4470b7c1 |
parts/Coil Winder Mk2 Carriage.stl |
529d24b7 |
parts/review/Coil Winder Mk2 Carriage.stl |
a757b510 |
parts/Coil Winder Mk2 Turns Scale.stl |
3c0c9786 |
parts/review/Coil Winder Mk2 Turns Scale.stl |
85341779 |
parts/VTOL Spar Jig Front (C v2.4B, ours).stl |
1105811d |
parts/review/VTOL Spar Jig Front (C v2.4B, ours).stl |
7265e0f6 |
parts/VTOL Spar Jig Rear (C v2.4B, ours) (port).stl |
6b01e027 |
parts/review/VTOL Spar Jig Rear (C v2.4B, ours) (port).stl |
8257fcf3 |
parts/VTOL Spar Jig Rear (C v2.4B, ours) (starboard).stl |
4d04edba |
parts/review/VTOL Spar Jig Rear (C v2.4B, ours) (starboard).stl |
757a8056 |
Test prints
Section titled “Test prints”tools/test_prints.py writes and reads the 34 files in parts/test-prints/. They stay in that folder.
The JSON ledger lists each one with its md5.
Source: docs/first-build-parts.md in the repo. Edit it there; this page is generated.
Comments
Comment on the whole page here, or on one section or step with the button beside it.