Transistor Pair Picker

Build matched transistor sets for fuzz pedals and other circuits.

0 in inventory
0 PNP
0 NPN
PNP

hFE vs Vf — full inventory (shaded bands = current target ranges)

Manage Inventory

v
Press Tab to move between fields, Enter to add. Type and polarity persist between adds so you can rip through a batch.
Drop image here or click to upload
PNG, JPG. Photos with handwritten hFE/Vf - see the Photo Guide tab for tips.
AI vision settings (Anthropic API key for best extraction)
Get a key at console.anthropic.com. Stored only in this browser's localStorage. Costs roughly $0.005 per image with Sonnet.
uploaded
Loading OCR engine...
AI extract sends the image to Claude's vision API and extracts hFE/Vf pairs — far more accurate on handwriting than the offline OCR. Tesseract OCR runs entirely in your browser, no API key needed, but expect to correct most values. Either way, eyeball the auto-fill against the photo before saving.
Drop CSV file here or click to browse
Smart-parses headers if present. Or paste CSV text below.
CSV format guide
With headers (recommended) — the parser matches column names case-insensitively. Recognized aliases:
type / part / part number / model / pn
hfe / gain / beta / h_fe
vf / vbe / v_be / forward voltage / mv
polarity / pol
id / name / label / position / tag
notes / comments / remarks / description

Without headers — values are inferred. The first two numbers per row become hFE and Vf. Strings ahead of them become id/type/polarity (order-flexible); trailing strings become notes.

Example with headers:
Type,hFE,Vf,Polarity,Notes
OC42,102,289,PNP,vintage British
OC42,95,300,PNP,

Quoted fields (for commas inside notes) and escaped quotes ("") are handled.
  1. One transistor type per page. Write the part number (e.g. OC42) once in marker, big and clear. The whole batch inherits it.
  2. Lay out in rows on white paper. Use blue painter's tape to keep the cans from rolling.
  3. Number each row or each transistor with tape strips: 1, 2, 3... Not required but makes cross-referencing easier later.
  4. Write hFE on top, Vf on bottom next to each transistor, in the same position relative to every can. Consistent layout makes auto-extraction much more accurate.
  5. Use a dark, clean marker. Black or dark blue OCRs best. Red works if it's bold; thin red ink on a glossy photo is the worst case.
  6. Print, don't cursive. Closed loops on 0 6 8 9; clear top bar on 5; cross your 7s if you want them distinguished from 1s.
  7. Shoot straight down. Phone parallel to the paper, no tilt. Tilted photos warp the digits and confuse the recognizer.
  8. Bright even light. Daylight or two soft lamps from opposite sides. Shadows from the cans across the numbers are the main failure mode.
  9. Frame tight. Fill the frame with the page - more pixels per digit = better recognition.
  10. One photo per page. Don't try to fit two pages in one shot.
Even with perfect photos, OCR on handwriting will miss values. Always eyeball the auto-fill numbers against the image before clicking Save all rows. The fastest workflow is usually: upload photo, glance at it as a reference, type the values into the row form yourself. OCR is the assistant, not the operator.
IDTypePolhFEVf (mV)Notes
Data persists in this browser's localStorage. Use Export JSON to back it up or move it to another machine. Sample data is 48 vintage germaniums for trying things out.

Each circuit has factory-set hFE ranges per position; tweak the numbers above to widen or narrow your search. Set Score combines how well each transistor sits in its target band, plus a bonus for circuits that benefit from a specific gain ratio between positions. All data lives in your browser only.