Sign in with STEVE

steve/keystone-test-point

Keystone colour-keyed through-hole PCB test points, miniature, compact and multipurpose, 5000 to 5014 and 5115 to 5129.

v1.0.0 Latest STEVE MIT 0
Isometric
part.py 60 lines · Python · STEVE runtime · checked
Download
1"""Keystone colour-keyed through-hole test point: a wire-form loop on a nylon base, miniature (5000 to 5004, 5115 to 5119), compact
2(5005 to 5009, 5120 to 5124) or multipurpose (5010 to 5014, 5125 to 5129). The base stands on the board (the XY plane) centred on the
3origin; the loop is in the XZ plane above it, and the terminal's legs run down through the board. The terminal is one solid, the base
4another. Dimensions from Keystone's catalogue page; see the README."""
5from steve import Model
6
7style = "compact" # miniature, compact or multipurpose
8colour = "red" # red, black, white, orange, yellow, brown, green, blue, grey or purple
9
10# style: (base diameter, loop inside diameter, base height, height above the board, overall length, terminal thickness, terminal width,
11# board hole), mm. Keystone Electronics catalogue, "(THM) THRU HOLE MOUNT TEST POINTS - COLOR KEYED", page 62 (copy hosted by
12# static.chipdip.ru): the dimensions in inches [mm] and the SPECIFICATIONS' "Terminal: thickness x width Phosphor Bronze, Silver Plate",
13# "Base: Nylon 46" and "Mtg. Hole".
14STYLES = {
15 "miniature": (2.5, 1.25, 3.0, 4.6, 7.6, 0.25, 0.51, 1.0),
16 "compact": (3.2, 1.80, 3.0, 5.6, 8.9, 0.38, 0.81, 1.6),
17 "multipurpose": (3.2, 1.80, 3.0, 8.1, 11.3, 0.38, 0.81, 1.6),
18}
19# The same page's catalogue numbers, by base colour, and the colours for looks.
20NUMBERS = {
21 "miniature": {"red": 5000, "black": 5001, "white": 5002, "orange": 5003, "yellow": 5004, "brown": 5115, "green": 5116, "blue": 5117,
22 "grey": 5118, "purple": 5119},
23 "compact": {"red": 5005, "black": 5006, "white": 5007, "orange": 5008, "yellow": 5009, "brown": 5120, "green": 5121, "blue": 5122,
24 "grey": 5123, "purple": 5124},
25 "multipurpose": {"red": 5010, "black": 5011, "white": 5012, "orange": 5013, "yellow": 5014, "brown": 5125, "green": 5126, "blue": 5127,
26 "grey": 5128, "purple": 5129},
27}
28COLOURS = {"red": "#c8302c", "black": "#1d1d1f", "white": "#f2f2ee", "orange": "#e8792b", "yellow": "#f2d22e", "brown": "#7a4a26",
29 "green": "#3f8f3f", "blue": "#2f5fb3", "grey": "#8a8a8a", "purple": "#7d4fa8"}
30# Proportion, for looks (the page draws it but doesn't dimension it): below the loop the terminal's two ends run down side by side as one
31# post, two thicknesses wide, through the base to the overall length's end below the board (the drawn snap-fit splay isn't modelled).
32
33if style not in STYLES:
34 raise ValueError(f"no style {style!r}: {', '.join(STYLES)}")
35if colour not in COLOURS:
36 raise ValueError(f"no colour {colour!r}: {', '.join(COLOURS)}")
37base_d, loop_id, base_h, above, overall, t, w, hole = STYLES[style]
38loop_r = loop_id / 2 + t
39loop_z = above - loop_r
40below = overall - above
41model = Model()
42# The loop: a ring of the terminal's section, in the XZ plane (normal -Y: offset -w / 2 and the extrusion runs across to -Y).
43model.plane("loop_plane", on="XZ", offset=-w / 2, name="Terminal")
44with model.sketch("loop_outer", on="loop_plane", name="Terminal") as sk:
45 sk.circle("outer", (0, loop_z), loop_r)
46model.extrude("loop", "loop_outer", distance=w, op="new", body="terminal_body", name="Terminal")
47with model.sketch("loop_inner", on="loop_plane", name="Terminal") as sk:
48 sk.circle("inner", (0, loop_z), loop_id / 2)
49model.extrude("loop_eye", "loop_inner", distance=w, op="cut", body="terminal_body", name="Terminal")
50post_top = loop_z - loop_id / 2
51model.box("post", 2 * t, w, post_top + below, at=(0, 0, (post_top - below) / 2), op="join", body="terminal_body", name="Terminal")
52model.cylinder("base", base_d / 2, base_h, op="new", body="base_body", name="Base")
53# The terminal passes through the base: cut its room out of the base, so that no solids overlap.
54model.combine("base_room", "base_body", ["terminal_body"], op="cut", keep_tools=True, name="Room for the terminal")
55# Materials (the page: "Phosphor Bronze, Silver Plate"; "Base: Nylon 46"): the terminal phosphor bronze C51000, the base nylon, pa6 the
56# nearest in the material list (PA46's density about 1.18, PA6's 1.14).
57model.material("copper-c51000", bodies=["terminal_body"], color="#d8d8dc")
58model.material("pa6", bodies=["base_body"], color=COLOURS[colour])
59result = model.result()
60

Through-hole PCB test points for board layouts and enclosures: the phosphor bronze wire-form loop and terminal, one solid, on a coloured nylon base, another. Keystone's colour-keyed miniature (5000-5004, 5115-5119), compact (5005-5009, 5120-5124) and multipurpose (5010-5014, 5125-5129) test points; the style gives the dimensions and the colour the catalogue number. Dimensions from Keystone's catalogue page. See the README.

Keystone test point

Keystone's colour-keyed through-hole PCB test points: a phosphor bronze wire-form loop on a nylon base, in three styles. The base stands on the board (the XY plane), centred on the origin. The loop is in the XZ plane above it, and the terminal runs down through the board. The terminal is one solid and the base another.

Style Catalogue numbers by base colour (red, black, white, orange, yellow, brown, green, blue, grey, purple)
miniature 5000, 5001, 5002, 5003, 5004, 5115, 5116, 5117, 5118, 5119
compact 5005, 5006, 5007, 5008, 5009, 5120, 5121, 5122, 5123, 5124
multipurpose 5010, 5011, 5012, 5013, 5014, 5125, 5126, 5127, 5128, 5129

Source

Keystone Electronics catalogue, "(THM) THRU HOLE MOUNT TEST POINTS - COLOR KEYED", page 62. Copy hosted by Chip and Dip, https://static.chipdip.ru/lib/819/DOC031819997.pdf. The page gives inches [mm]. The terminal is from its SPECIFICATIONS: "Terminal: thickness x width Phosphor Bronze, Silver Plate", "Base: Nylon 46, UL Rated 94V-0" and "Mtg. Hole".

Style Base diameter Loop inside diameter Base height Above the board Overall length Terminal Mounting hole
miniature .100 [2.5] .050 [1.25] .120 [3.0] .180 [4.6] .300 [7.6] .010 (.25) x .020 (.51) .040 (1.0)
compact .125 [3.2] .070 [1.80] .120 [3.0] .220 [5.6] .350 [8.9] .015 (.38) x .032 (.81) .063 (1.6)
multipurpose .125 [3.2] .070 [1.80] .120 [3.0] .320 [8.1] .445 [11.3] .015 (.38) x .032 (.81) .063 (1.6)

The loop is the terminal's section, thickness x width, bent to the inside diameter, with its top at the height above the board. The overall length runs from the loop's top to the terminal's end below the board.

Proportion, stated plainly. The page draws this but doesn't dimension it. Below the loop, the terminal's two ends run down side by side as one post, two thicknesses wide, through the base to the end below the board. The drawn snap-fit splay of the legs under the board isn't modelled. The terminal's room is cut out of the base, so no solids overlap.

Materials. The terminal is phosphor bronze, copper C51000, shown silver for the plating. The base is Nylon 46, and pa6 is the nearest nylon in the material list (PA46's density is about 1.18, PA6's 1.14). The base colours are for looks. The page gives no weight.

Catalogue models

The old catalogue's TestPoint_Keystone_5005-5009_Compact maps to the compact style, preset 5005 (red). The entry covers 5005 to 5009, which differ only in colour. Its reference model was measured against the page, and every value is within 0.05:

Reference model Keystone compact
Base diameter 3.18 3.2
Base height 3.05 3.0
Top above the board 5.6 5.6
End below the board 3.3 3.3 (8.9 - 5.6)
Loop width 2.54 2.56 (1.80 + 2 x 0.38)
Terminal width 0.82 0.81

The family's other entries name no maker. The TestPoint_Loop_* entries are bare wire loops without a base, and the TestPoint_Bridge_* entries are wire bridges by pitch and drill. They are left with their reasons in COVERAGE.md.

  1. 1.0.0 Latest
More #test-point
STEVEMIT

steve/disc-varistor

Leaded disc varistors, TDK SIOV StandarD series S05, S07, S10, S14 and S20, every voltage class from 11 V to 1100 V.

1 150 sizes 0 9 hours ago v1.0.0
STEVEMIT

steve/small-tactile-switch-tht

6 x 3.5 mm through-hole tactile switches from APEM's MJTP sheet: MJTP1243 (4.3 mm actuator) and MJTP1250 (5.0 mm), two terminals 6.5 apart.

1 2 sizes 0 3 hours ago v1.0.0
STEVEMIT

steve/axial-resistor

Axial leaded metal film resistor, Vishay Beyschlag MBA/SMA 0204, MBB/SMA 0207 and MBE/SMA 0414, with colour rings, horizontal or vertical.

1 9 sizes 0 10 hours ago v1.0.0
STEVEMIT

steve/tht-led

Through-hole round LEDs from Vishay's drawings: 5 mm (T-1 3/4, TLHx5400) and 3 mm (T-1, TLHx4400), red, yellow or green.

1 6 sizes 0 6 hours ago v1.0.1