muse/book-reading-clip-lamp
A Wi‑Fi/USB‑C ESP32‑S3 reading lamp with OV5640 camera, microphone, speaker amplifier, rechargeable Li‑Po power management, six-LED boost light, USB protection/charging detection, and a clip/gooseneck enclosure with external FlexPIFA antenna.
- Version
- 0.4.3
- License
- unset
- Stars
- 0
mechanical/camera-fit-checks.json
{
"dimensions": {
"sku": "114993115",
"revision": "MJY5OAF-F3M-V1 / 2023-06-20",
"source": "https://files.seeedstudio.com/wiki/OV5640_for_ESP32S3_sense/OV5640_Datasheet.pdf",
"productSource": "https://www.seeedstudio.com/OV5640-Camera-for-XIAO-ESP32S3-Sense-With-Heat-Sink-p-5739.html",
"overallFlatLength": 70.5,
"overallLengthTolerance": 0.2,
"bodyWidth": 8.5,
"bodyHeight": 5.4,
"bodyTolerance": 0.2,
"flexWidth": 6,
"flexThickness": 0.12,
"flexThicknessTolerance": 0.03,
"tailWidth": 12.5,
"tailLength": 4,
"tailThickness": 0.3,
"tailThicknessTolerance": 0.03,
"contactCount": 24,
"contactPitch": 0.5,
"contactLength": 2.5,
"heatSinkSize": [
7,
6,
7
],
"adhesiveAllowance": 0.15,
"lensCenter": [
0,
3.5
],
"lensFrontZ": -16.7,
"moduleRearZ": -11.3,
"flexCenterZ": -11.56,
"connectorMouthY": -7.61101965,
"connectorTipY": -10.1,
"connectorFlexZ": -1.9,
"returnBendY": -4.6,
"minimumBendRadiusAssumed": 2.4
},
"fold": {
"freeFlexLength": 62,
"centerlineLength": 62.00000000000001,
"bendRadius": 2.415,
"innerRadiusAtMaxThickness": 2.34,
"foldCount": 2,
"tailStraightLength": 4,
"lowerTurnY": -23.33805374158065,
"lowestY": -25.75305374158065,
"stiffenerStartY": -6.1,
"nominalInsertionDepth": 2.4889803499999994,
"endpoint": [
0,
-10.1,
-1.9
],
"contactFace": "+Z (toward PCB); pin-1 orientation requires sample confirmation"
},
"connectorReview": {
"status": "DO NOT RELEASE: current J2 tail geometry is not a documented match",
"connector": "FH12-24S-0.5SH(55)",
"source": "https://www.hirose.com/en/product/series/FH12/documents?path=/api/v1/series/FH12/documents/product_series_catalog/content?lang%3DEN",
"sourcePage": 10,
"recommendedContactLengthMin": 3.5,
"seeedContactLength": 2.5,
"recommendedStiffenerLengthMin": 4.5,
"seeedStiffenerLength": 4,
"recommendedTailWidthTolerance": 0.07,
"seeedTailWidthTolerance": 0.1,
"action": "Select a connector documented for this shorter camera tail (or get explicit manufacturer approval), then recheck insertion height, contact side, pin 1 and folded route. The displayed J2 insertion is a packaging placeholder, not proof of mating."
},
"readyForManufacture": false,
"shellDepthMm": 32.7,
"previousFit": {
"shellDepthMm": 22,
"suppliedHeatSinkPcbIntersectionMm3": 30.720000000000002,
"suppliedHeatSinkRetainerIntersectionMm3": 12.287999999999998,
"result": "Does not fit: supplied 7 mm heatsink crosses PCB and original retaining strap"
},
"matingOverlaps": [
{
"part": "wifi-antenna-coax",
"component": "U1",
"volumeMm3": 9.348509830698148,
"note": "U.FL plug and feed within the upper-right socket recess only; sample engagement required"
},
{
"part": "head-harness-plug",
"component": "J3",
"volumeMm3": 386.07473008495697,
"note": "XHP-8 inserted housing in B8B-XH socket envelope; dimensioned reference, sample fit required"
},
{
"part": "camera-flex",
"component": "J2",
"volumeMm3": 9.468081251399976,
"note": "Inserted tongue inside connector bounding envelope; physical slot and pin-1 need sample confirmation"
}
],
"clearances": [
{
"candidate": "flex-max-tolerance",
"target": "front-bezel",
"gapMm": 0.4500000000000002,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "camera-retainer",
"gapMm": 0.395885084057814,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "PCB substrate",
"gapMm": 0.9349999999999998,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "U14",
"gapMm": 2.946208539474154,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "U15",
"gapMm": 2.5349999999999997,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "U16",
"gapMm": 2.535,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "U17",
"gapMm": 2.5349999999999997,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "R39",
"gapMm": 2.6272271052698994,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "R40",
"gapMm": 2.535,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "R41",
"gapMm": 2.5350000000000006,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "C40",
"gapMm": 2.535,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "U3",
"gapMm": 2.5437011122860316,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "R25",
"gapMm": 2.535,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "C4",
"gapMm": 2.6769852452206835,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "C5",
"gapMm": 2.535,
"overlapMm3": 0
},
{
"candidate": "flex-max-tolerance",
"target": "J2",
"gapMm": 0.011019650000005043,
"overlapMm3": 0,
"note": "Expected inserted contact tongue excluded"
},
{
"candidate": "flex-max-tolerance",
"target": "L1",
"gapMm": 2.53512327116454,
"overlapMm3": 0
},
{
"candidate": "heatsink-full-envelope",
"target": "front-bezel",
"gapMm": 1.1101801655587256,
"overlapMm3": 0
},
{
"candidate": "heatsink-full-envelope",
"target": "camera-retainer",
"gapMm": 0.3999999999999999,
"overlapMm3": 0
}
],
"conclusion": "Enclosure space passes, but current J2 mating geometry is not a documented match. Bend radius, adhesive, shipped revision, insertion/pin-1 and thermal performance require physical qualification."
}