Skip to content

Plugged screws

joints.plugged_screws

A thick batten screwed to a board, the screws' heads sunk in counterbores 8 mm deep, to be closed by plugs.

Plugged screws, assembled

Plugged screws, exploded

Parameters

Parameter Default
screw_length 35

Change them in a design file (see Change an example):

from woodwright.examples import joints

design = joints.plugged_screws(screw_length=43.75)

Drawings

The plans in one PDF: plans.pdf.

Assembly

assembly

Parts

parts

Batten

batten

Board

board

Cut list

board   500 x 150 x 20 mm  oak
        - 2 x pilot hole ø3, 13 deep, drill point 118 deg, in top_face, 90 and 410 from left_end; centered, for a 4 x 35 screw
batten  400 x 60 x 30 mm  oak
        - 2 x clearance hole ø4.5, counterbored ø10, 8 deep, in top_face, 40 from left_end and right_end; centered, for a 4 x 35 screw

Code

From woodwright/examples/joints.py, which imports the names it uses (see From an example to your own design):

def plugged_screws(screw_length: float = 35) -> Assembly:
    """A thick batten screwed to a board, the screws' heads sunk in
    counterbores 8 mm deep, to be closed by plugs."""
    asm = Assembly("plugged_screws")
    board = asm.add(Board("board", OAK, length=500, width=150))
    batten = asm.add(Board("batten", THICK_OAK, length=400, width=60))
    asm.join(Butt(board.top_face, batten.bottom_face, across=CENTERED))
    for end in (batten.left_end, batten.right_end):
        asm.join(
            Screw(
                batten.top_face,
                into=board,
                length=screw_length,
                at={end: 40},
                head_diameter=10,
                counterbore_depth=8,
            )
        )
    return asm

Exported with woodwright 0.9.0 on 2026-10-25.