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

dist/camera-fit/circuit.json

PCBPCB preview for dist/camera-fit/circuit.json
SchematicSchematic preview for dist/camera-fit/circuit.json
[
  {
    "type": "source_component",
    "source_component_id": "source_component_0",
    "ftype": "subassembly",
    "name": "camera_reference"
  },
  {
    "type": "source_component",
    "source_component_id": "source_component_1",
    "ftype": "subassembly",
    "name": "camera_heatsink"
  },
  {
    "type": "source_component",
    "source_component_id": "source_component_2",
    "ftype": "subassembly",
    "name": "camera_thermal_pad"
  },
  {
    "type": "source_component",
    "source_component_id": "source_component_3",
    "ftype": "subassembly",
    "name": "camera_flex"
  },
  {
    "type": "source_component",
    "source_component_id": "source_component_4",
    "ftype": "subassembly",
    "name": "camera_retainer"
  },
  {
    "type": "cad_component",
    "cad_component_id": "cad_component_0",
    "model_glb_url": "./mechanical/camera-reference.glb",
    "position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "rotation": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "layer": "top",
    "source_component_id": "source_component_0",
    "model_origin_position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "model_unit_to_mm_scale_factor": 1,
    "model_object_fit": "contain_within_bounds",
    "anchor_alignment": "center",
    "show_as_translucent_model": false
  },
  {
    "type": "cad_component",
    "cad_component_id": "cad_component_1",
    "model_glb_url": "./mechanical/camera-heatsink.glb",
    "position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "rotation": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "layer": "top",
    "source_component_id": "source_component_1",
    "model_origin_position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "model_unit_to_mm_scale_factor": 1,
    "model_object_fit": "contain_within_bounds",
    "anchor_alignment": "center",
    "show_as_translucent_model": false
  },
  {
    "type": "cad_component",
    "cad_component_id": "cad_component_2",
    "model_glb_url": "./mechanical/camera-thermal-pad.glb",
    "position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "rotation": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "layer": "top",
    "source_component_id": "source_component_2",
    "model_origin_position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "model_unit_to_mm_scale_factor": 1,
    "model_object_fit": "contain_within_bounds",
    "anchor_alignment": "center",
    "show_as_translucent_model": false
  },
  {
    "type": "cad_component",
    "cad_component_id": "cad_component_3",
    "model_glb_url": "./mechanical/camera-flex.glb",
    "position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "rotation": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "layer": "top",
    "source_component_id": "source_component_3",
    "model_origin_position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "model_unit_to_mm_scale_factor": 1,
    "model_object_fit": "contain_within_bounds",
    "anchor_alignment": "center",
    "show_as_translucent_model": false
  },
  {
    "type": "cad_component",
    "cad_component_id": "cad_component_4",
    "model_jscad": {
      "type": "colorize",
      "color": [
        0.27,
        0.35,
        0.34
      ],
      "shape": {
        "type": "subtract",
        "shapes": [
          {
            "type": "union",
            "shapes": [
              {
                "type": "translate",
                "vector": [
                  0,
                  3.5,
                  -10.9
                ],
                "shape": {
                  "type": "cuboid",
                  "size": [
                    11,
                    10.2,
                    0.8
                  ]
                }
              },
              {
                "type": "translate",
                "vector": [
                  0,
                  3.5,
                  -10.9
                ],
                "shape": {
                  "type": "cuboid",
                  "size": [
                    21,
                    3.2,
                    0.8
                  ]
                }
              }
            ]
          },
          {
            "type": "translate",
            "vector": [
              0,
              3.5,
              -10.9
            ],
            "shape": {
              "type": "cuboid",
              "size": [
                7.8,
                6.8,
                1.2
              ]
            }
          },
          {
            "type": "translate",
            "vector": [
              0,
              -1.1,
              -11.2
            ],
            "shape": {
              "type": "cuboid",
              "size": [
                7,
                1.4,
                0.6
              ]
            }
          },
          {
            "type": "translate",
            "vector": [
              -8.5,
              3.5,
              -10.9
            ],
            "shape": {
              "type": "cylinder",
              "radius": 1.1,
              "height": 1.1999999999999993,
              "segments": 96
            }
          },
          {
            "type": "translate",
            "vector": [
              8.5,
              3.5,
              -10.9
            ],
            "shape": {
              "type": "cylinder",
              "radius": 1.1,
              "height": 1.1999999999999993,
              "segments": 96
            }
          }
        ]
      }
    },
    "position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "rotation": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "layer": "top",
    "source_component_id": "source_component_4",
    "model_origin_position": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "model_unit_to_mm_scale_factor": 1,
    "model_object_fit": "contain_within_bounds",
    "anchor_alignment": "center",
    "show_as_translucent_model": false
  },
  {
    "type": "source_project_metadata",
    "source_filesystem_md5_hash": "ab4c70be15ec37a2be68234b65fb1146"
  }
]