feat(hardware): initial hardware documentation, 3D models, and ESP32 client code

- Add initial versions of hardware bills of materials (BOM v1-v4), shopping lists, plan, and assembly guides.
- Add STL models for 3D-printing the 1/27 scale OpenRC F1 car parts.
- Add Blender 3D project files (.blend) and camera renders of the car design iterations.
- Add ESP32 client firmware source (client.ino) for handling video streaming and car controls.
- Ignore Blender backup files (*.blend1, *.blend2) and IDE directories.
This commit is contained in:
x0gp
2026-07-06 12:41:04 +04:00
parent 49351b4928
commit 76e33cfe62
73 changed files with 2353 additions and 0 deletions
+193
View File
@@ -0,0 +1,193 @@
{
"chassis": {
"scale": "1/27 Compact",
"wheelbase_mm": 102,
"track_front_mm": 58,
"track_rear_mm": 60,
"deck_mm": [
76,
130,
2.5
],
"deck_material": "PETG",
"ground_clearance_mm": 7
},
"drivetrain": [
{
"slot": "Front Left Wheel",
"model": "PN Racing PN-WS-F1",
"size_mm": "Ø25×8",
"axle": "M2×16",
"price_usd": 4.0
},
{
"slot": "Front Right Wheel",
"model": "PN Racing PN-WS-F1",
"size_mm": "Ø25×8",
"axle": "M2×16",
"price_usd": 4.0
},
{
"slot": "Rear Left Wheel",
"model": "PN Racing PN-WS-R1",
"size_mm": "Ø28×11",
"axle": "M2×20",
"price_usd": 4.0
},
{
"slot": "Rear Right Wheel",
"model": "PN Racing PN-WS-R1",
"size_mm": "Ø28×11",
"axle": "M2×20",
"price_usd": 4.0
},
{
"slot": "Front Bearing",
"model": "684ZZ (4×9×4)",
"qty": 2,
"price_usd": 1.5
},
{
"slot": "Rear Bearing",
"model": "693ZZ (3×8×4)",
"qty": 2,
"price_usd": 1.0
},
{
"slot": "Dogbones",
"model": "PN Racing PN-DB-30 steel",
"qty": 2,
"price_usd": 4.0
},
{
"slot": "Pinion",
"model": "M0.3 10T steel",
"qty": 1,
"price_usd": 1.5
},
{
"slot": "Spur gear",
"model": "M0.3 56T delrin",
"qty": 1,
"price_usd": 1.5
},
{
"slot": "Motor",
"model": "RC0615 brushless 14000KV",
"size_mm": "Ø6×15",
"voltage": "1S",
"price_usd": 5.0
},
{
"slot": "ESC",
"model": "Hobbywing XeRun Mini 10A",
"size_mm": "20×15×5",
"current": "10A",
"price_usd": 14.0
},
{
"slot": "Servo",
"model": "EMAX ES9051",
"size_mm": "20×18×8",
"torque": "1.5kg",
"price_usd": 7.0
},
{
"slot": "Battery",
"model": "1S LiPo 300mAh 50C",
"size_mm": "30×18×8",
"conn": "XT30",
"price_usd": 4.5
},
{
"slot": "Shocks",
"model": "PN Racing PN-SHK-30",
"size_mm": "Ø5.5×30",
"type": "oil-filled",
"price_usd": 14.0
}
],
"fpv": [
{
"slot": "FPV Camera",
"model": "Eachine C01 PRO",
"size_mm": "14×14×16",
"res": "1200TVL",
"price_usd": 12.0
},
{
"slot": "VTX",
"model": "Eachine TX01S 25mW",
"size_mm": "14×11×3",
"band": "5.8GHz",
"price_usd": 9.0
},
{
"slot": "VTX Antenna",
"model": "Pagoda RHCP 5.8GHz",
"type": "stubby",
"price_usd": 2.0
},
{
"slot": "VRX (PC side)",
"model": "Eachine ProDVR 5.8GHz",
"out": "USB",
"price_usd": 22.0
},
{
"slot": "VRX Antenna",
"model": "RHCP 5.8GHz panel/stubby",
"type": "panel recommended",
"price_usd": 5.0
}
],
"agent": [
{
"slot": "MCU",
"model": "ESP32-S3-WROOM-1 DevKitC",
"size_mm": "25×18",
"wifi": "2.4GHz",
"price_usd": 6.0
},
{
"slot": "IMU",
"model": "MPU-6050",
"size_mm": "16×11",
"price_usd": 1.5
},
{
"slot": "Buck 5V",
"model": "Mini-360",
"i_max": "2A",
"price_usd": 1.0
}
],
"body": [
{
"slot": "Body shell",
"model": "Tamiya F103 Lexan 0.5mm",
"scale": "1/27",
"alt": "PN Racing F1",
"price_usd": 15.0
},
{
"slot": "Body posts",
"model": "Custom PETG",
"qty": 4,
"note": "print self",
"price_usd": 0.0
},
{
"slot": "Front/rear bumper",
"model": "Custom TPU 95A",
"note": "print self",
"price_usd": 0.0
}
],
"totals": {
"per_car_usd": 137.5,
"4_cars_usd": 550.0,
"track_infra_usd": 200.0,
"grand_total_usd": 750.0
}
}