Files
clocklear 5d15a1fd82 Organize projects into folders with READMEs and preview renders.
Move the Ring solar siding adapter into its own directory, add repo and
project documentation, and introduce a preview script (OpenSCAD+xvfb or
PyVista fallback) for catalog images.
2026-06-13 17:09:11 -04:00

5.6 KiB
Raw Permalink Blame History

Ring Solar Siding Adapter

Preview

Parametric adapter plate that sits between a Ring Solar Charger (integrated battery-doorbell solar unit) and horizontal beaded vinyl lap siding.

Source ring-solar-siding-adapter.scad
Footprint ~93 × 171 mm (matches the Ring back)
Units Millimeters throughout

What it is

  • Front face: flat — the Ring unit mounts here.
  • Rear face: shaped to match siding — bead groove at the top, flat shelf in the middle, curved taper at the bottom.

What it's for

The Ring's back is flat; siding is not. Without an adapter, you get gaps, uneven pressure, and a poor mount.

This plate:

  • Conforms to the siding profile so the rear sits flush against the wall.
  • Receives the siding bead in a semicircular groove near the top.
  • Provides two through-holes aligned with the Ring's house-mount screws — screws pass through Ring → adapter → siding → sheathing.

Typical stack:

Ring Solar Charger
       ↓ screws
  Adapter plate  ← this part
       ↓
  Vinyl siding
       ↓
  Sheathing

Rear profile (side view, bottom → top)

plate top ─────────────  bead coping groove (receives siding bead)
            flat rear shelf
taper start ─────────────  flat_upper_ratio sets this boundary
            curved taper
plate bottom ────────────  deepest projection toward front

Depth convention: lower depth = toward the wall; higher depth = toward the front (Ring).

Parameters

Plate

Parameter Meaning
plate_width Width of the adapter (Ring back width).
plate_height Height of the adapter (Ring back height).
min_wall_thickness Minimum solid depth at the thinnest point (bead groove pinch). Also scales bottom taper reach.
edge_round Rounds front edges via minkowski. Keep 0 while tuning; set ~1 for final print (slower render).

Siding profile

Parameter Meaning
siding_projection Nominal max siding depth from wall. Feeds face_inset_z via clearance and inset.
face_inset_depth How far the flat upper rear sits in from max projection.
bead_coping_radius Radius of the semicircular bead groove (measured on your siding).
bead_coping_offset_top Distance from plate top to center of the bead groove.
flat_upper_ratio Fraction of plate height (from top down) with a flat rear. Lower = taper starts higher.
bottom_taper_depth_ratio How far the bottom rear reaches toward the front beyond the flat shelf: min_wall_thickness × this. Higher = more projection at bottom.
rear_extension Pushes flat rear and taper toward the wall without moving the front face or bead groove vs front/top. Adds overall depth.
course_pitch Bead-to-bead spacing on your siding (~6.5"). Reference for tuning.
profile_segments Curve sampling resolution. Higher = smoother, slower.
profile_mode curved = smooth taper; stepped = debug fallback with sharp transitions.
rear_clearance Small gap so the part doesn't bind on siding.

Common tuning relationships:

Goal Parameter
Move taper start up/down flat_upper_ratio
Bottom taper more/less toward front bottom_taper_depth_ratio
Whole plate deeper front-to-back (bead stays put) rear_extension
Bead groove up/down bead_coping_offset_top
Groove size bead_coping_radius

Mounting holes

Parameter Meaning
mount_hole_offset_top Upper hole center distance from plate top.
mount_hole_offset_bottom Lower hole center distance from plate bottom.
mount_hole_dia Hole diameter (4.5 mm for 4 mm Ring screws).
mount_hole_x Horizontal offset from center (0 = centered).

Export

Parameter Meaning
part_mode What to generate (see below).
profile_strip_width Width of the narrow siding fit-test strip.
front_slice_depth Thickness of the front-face test cap (mm).

Export modes:

Mode Purpose
full Complete adapter with holes — final part.
profile_strip Narrow strip through the rear profile — cheap siding fit test.
front_slice Thin front cap with holes — check width, height, hole placement vs Ring.

Suggested workflow

  1. profile_strip — tune siding profile (flat_upper_ratio, bottom_taper_depth_ratio, rear_extension, bead params).
  2. front_slice — verify Ring hole alignment.
  3. full — print final plate (PETG/ASA recommended outdoors; PLA OK for tests).

Print orientation: front face (Ring side) on the bed, rear profile vertical.

File Purpose
ring-solar-siding-adapter.backup.scad Earlier geometry — flat upper rear + lower taper only, no bead coping groove
*.stl Exported meshes (gitignored; export locally)

Regenerate preview

From the repo root:

pip install pyvista                    # headless fallback (WSL without display)
sudo apt install xvfb                  # optional — native OpenSCAD PNG export
python3 scripts/render-preview.py ring-solar-siding-adapter

Or export a PNG directly from OpenSCAD when a display (or xvfb-run) is available:

xvfb-run -a openscad --render --viewall --imgsize=1200,900 \
  -o ring-solar-siding-adapter/preview.png \
  ring-solar-siding-adapter/ring-solar-siding-adapter.scad