Skip to the content
PCBKitNew board
4 layers160 × 100 mmMastertemp esp32, the printed circuit board in 3D

This folder is the KiCad project area for the MasterTemp 125 ESP32 interface board.

Size
160 × 100 mm
Copper layers
4
Thickness
1.6 mm
Parts
95
Nets
83
Pads
355
Tracks, vias
490, 75
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
31 May 2026
Updated
2 Jun 2026

Overview

Mastertemp esp32 is an open-source printed circuit board by ryanbjohnson, from the ryanbjohnson/PentairMasterTempESP32 repository on GitHub, published under the MIT licence. It is a 4-layer board of 160 × 100 mm with 95 parts on 83 nets, routed with 490 tracks and 75 vias.

It is built around the ESP32-WROOM-32E-N16, NXE1S0505MC-R7 and ADS1115IDGSR, with the LM5164DDAR, OPA333AIDBVR-MS and MCP23017-E/SS among its other parts. Its parts include 33 resistors, 18 ICs, 10 capacitors, 6 connectors and 3 diodes. It belongs with the ESP32 boards of this library.

Main components

11

README

pcb/mastertemp_esp32/README.md

MasterTemp ESP32 KiCad Scaffold

This folder is the KiCad project area for the MasterTemp 125 ESP32 interface board.

The current files are a scaffold, not a completed schematic or board layout. The design intent and safety constraints live in:

  • ../../MasterTemp_ESP32_Interface_Preliminary_Design.md
  • ../requirements/mastertemp_esp32_requirements.yaml

Installed-heater inputs required before electrical release are tracked in docs/field_input_verification.md.

The original Pentair board photo reference is tracked in docs/oem_board_photo_layout_notes.md; save the image itself as references/images/original_pentair_control_board_front.jpg when exporting the chat/IDE attachment.

Recommended workflow

  1. Open mastertemp_esp32.kicad_pro in KiCad.
  2. Immediately save the project from KiCad once, so your installed KiCad version normalizes the project metadata.
  3. Work sheet by sheet, starting with sheets/power_24vac.kicad_sch.
  4. After each sheet-level change, run ERC.
  5. After placement/routing changes, run DRC.
  6. Keep all project-local symbols in libraries/symbols/mastertemp_esp32.kicad_sym.
  7. Keep all project-local footprints in libraries/footprints/mastertemp_esp32.pretty.

Safety notes

  • This project is an operating-control interface only.
  • Do not add any ESP32-controlled gas-valve output.
  • Do not route line voltage on this PCB.
  • Preserve the OEM ignition control module and its sequencing.
  • The heat-request output must remain dual normally-open relay contacts in series unless a qualified safety review approves another architecture.

Folder map

  • sheets/: hierarchical schematic sheets.
  • libraries/: project-local symbols and footprints.
  • rules/: layout constraints and DRC notes.
  • docs/: design workflow notes, pin maps, and review records.
  • references/: project-local manuals, source documents, and non-release visual references.

Completion checklist

Use this as the live gate list for moving from scaffold to a reviewable PCB package. Keep each checkbox honest: complete means captured, checked, and reviewed, not merely started.

Project setup

  • KiCad project scaffold exists with root schematic, child sheets, PCB file, local library tables, and scripts.
  • Four-layer board scaffold exists with preliminary 160 mm x 100 mm outline and functional placement zones.
  • PCB floorplan v0 exists with connector, relay, power, ESP32, analog, and test-pad placement envelopes.
  • Local MasterTemp 125 Rev C PDF electrical pages were reviewed and summarized in docs/mastertemp125_rev_c_manual_review.md.
  • Candidate sourced BOM and first-pass footprint placement exist for control-board circuitry.
  • PCB-side draft nets and first-pass relay contact-chain routing are applied and documented.
  • Headless KiCad ERC and DRC automation runs in the dev container.
  • Repository-level scaffold tests exist under tests/.
  • KiCad project metadata has been opened and normalized once in the target GUI KiCad version.
  • Generated reports/ and fab/ outputs are regenerated from the final release candidate.

Inputs to close before electrical release

  • Exact MasterTemp 125 model revision, serial/date range, and connected/non-connected variant are recorded.
  • Field input verification record is complete and reviewed in docs/field_input_verification.md.
  • Rev C manual connector groups are reflected in draft requirements and floorplan.
  • Heater harness pinout is verified from the installed unit and matching manual revision.
  • 24 VAC transformer no-load and loaded voltages are measured.
  • Water thermistor resistance curve is confirmed.
  • Stack flue sensor electrical type and valid/fault ranges are confirmed.
  • Enclosure, mounting holes, standoff height, cable-entry direction, and service clearances are selected.
  • Certification/review path is chosen, including current applicable pool-heater and automatic-control standards.

Schematic capture

  • power_24vac: connector, fuse/PTC, MOV/TVS, bridge, VRAW bulk, 5 V supply, 3.3 V supply, power-good/brownout.
  • icm_interface: manual-aligned operating-control connector, dual series normally-open relay contacts, coil drivers, flyback, AC opto sense, TH feedback, ICM terminal reference.
  • esp32_supervisor: ESP32 module, programming header, watchdog, reset supervisor, I2C, relay-enable logic.
  • safety_inputs: Fireman's Switch, PS, HLS, ES1, AGS static chain, AFS dynamic monitor, dry-contact isolated sense.
  • thermistor_sfs: first-pass ADC/window-comparator architecture captured; final thermistor/SFS values and thresholds remain field-open.
  • ui_remote: Pool/Common/Spa external-control dry-contact sense only; keypad/display/buzzer/status LED design remains out of scope.
  • ERC has zero unreviewed violations after each sheet is captured.
  • All symbols have footprints assigned or documented as no-fit/test-only.

Safety review

  • OEM ignition control module remains responsible for ignition, flame proving, and gas-valve sequencing.
  • No ESP32 or board output can directly energize the gas valve.
  • No line-voltage nets, connectors, labels, or routing exist on this PCB.
  • Two normally-open relay contacts are in series in the TH heat-request path.
  • Relay drive drops out on ESP32 reset, watchdog timeout, brownout, firmware fault, OTA, static safety open, invalid sensor, and relay feedback fault.
  • AFS is treated as a dynamic airflow-proving input, not as a static pre-fire interlock.
  • Preliminary FMEA covers welded relay, optocoupler failure, stuck ADC, brownout oscillation, firmware deadlock, and miswire cases.

PCB layout

  • First-pass placement envelopes follow the zone plan in rules/layout_constraints.md.
  • Draft connector envelopes follow Rev C Figure 24 operating-control groups.
  • Candidate footprints are placed according to first-pass sourced part numbers.
  • Critical relay contact-chain PCB nets are named and first-pass routed.
  • Footprints are synchronized to final schematic symbols and netlist.
  • ESP32 antenna keepout has no copper, components, or nearby metal-obstructing placement in the draft placement.
  • Relay contact and 24 VAC control paths use assigned net classes and visible separation from logic.
  • Field-side optocoupler pins face connectors and logic-side pins face MCU/expander circuitry.
  • Thermistor/SFS analog traces avoid relay coils, AC sense, ESD discharge paths, and buck switch nodes.
  • Test pads exist for VRAW, +5V, +3V3, watchdog, safety chain, relay coils, TH feedback, and VAL sense.
  • Silkscreen warnings are present and readable.
  • DRC has zero unreviewed violations and schematic parity passes for the current draft.

Fabrication and validation

  • Schematic PDF, PCB plots, Gerbers, drill files, BOM, and placement outputs are generated.
  • Bench test procedure is executed with an isolated 24 VAC transformer.
  • Every required heat-request drop-out case is tested and recorded.
  • Relay feedback/welded-contact detection is tested.
  • VAL sense-only behavior is tested.
  • 24-hour relay/sensor soak test is completed.
  • Qualified technician review is complete before any live-heater connection.

Parts

95
QtyValueFootprintReferences
2100nF_REMOTE_FILTER_TBDCapacitor_SMD:C_0805_2012MetricC2, C3
210k_REMOTE_PULLUPResistor_SMD:R_0805_2012MetricR3, R4
22.2k_REMOTE_WET_TBDResistor_SMD:R_0805_2012MetricR1, R2
2AO3400APackage_TO_SOT_SMD:SOT-23Q1, Q2
2G5Q-1A-DC5Relay_THT:Relay_SPST_Omron-G5Q-1AK1, K2
1+3V3TestPoint_Pad_D2.0mmTP3
1+5VTestPoint_Pad_D2.0mmTP2
10.5A_FUSEFuse:Fuse_1206_3216MetricF1
1100nF_BST_3V3Capacitor_SMD:C_0603_1608MetricC6
110uF_50V_3V3_IN_TBDCapacitor_SMD:C_1210_3225MetricC7
12.2nF_50V_BST_5VCapacitor_SMD:C_0603_1608MetricC5
12.2uF_100V_VRAW_IN_TBDCapacitor_SMD:C_1210_3225MetricC4
12.2uHInductor_SMD:L_Vishay_IFSC-1515AH_4x4x1.8mmL2
122uF_10V_3V3_OUT_TBDCapacitor_SMD:C_0805_2012MetricC8
124VAC_INConnector_Phoenix_MSTB:PhoenixContact_MSTBA_2,5_3-G-5,08_1x03_P5.08mm_HorizontalJ1
1470uF_63VCapacitor_THT:CP_Radial_D10.0mm_P5.00mmC1
168uHInductor_SMD:L_12x12mm_H8mmL1
1ADS1115IDGSRPackage_SO:VSSOP-10_3x3mm_P0.5mmU7
1AP63203WU-7Package_TO_SOT_SMD:TSOT-23-6U2
1ESP32-WROOM-32E-N16ESP32-WROOM-32EU5
1EXT_CONTROLConnector_Phoenix_MSTB:PhoenixContact_MSTBA_2,5_3-G-5,08_1x03_P5.08mm_HorizontalJ5
1H11AA1M_24VACPackage_DIP:DIP-6_W7.62mmU12
1H11AA1M_INDPackage_DIP:DIP-6_W7.62mmU10
1H11AA1M_THPackage_DIP:DIP-6_W7.62mmU9
1H11AA1M_VALPackage_DIP:DIP-6_W7.62mmU11
1I2C_SCL_PULLUP_TBDResistor_SMD:R_0805_2012MetricR26
1I2C_SDA_PULLUP_TBDResistor_SMD:R_0805_2012MetricR25
1IND_OPTO_LIMIT_A_TBDResistor_SMD:R_0805_2012MetricR16
1IND_OPTO_LIMIT_B_TBDResistor_SMD:R_0805_2012MetricR17
1IND_OPTO_PULLUP_TBDResistor_SMD:R_0805_2012MetricR18
1K1_COILTestPoint_Pad_D2.0mmTP6
1K1_FLYBACK_TBDDiode_SMD:D_SOD-123D2
1K1_GATE_PULLDOWN_TBDResistor_SMD:R_0805_2012MetricR10
1K1_GATE_SERIES_TBDResistor_SMD:R_0805_2012MetricR22
1K2_COILTestPoint_Pad_D2.0mmTP7
1K2_FLYBACK_TBDDiode_SMD:D_SOD-123D3
1K2_GATE_PULLDOWN_TBDResistor_SMD:R_0805_2012MetricR11
1K2_GATE_SERIES_TBDResistor_SMD:R_0805_2012MetricR23
1LM5164DDARPackage_SO:TI_SO-PowerPAD-8U1
1LTV-817S_POOL_CANDIDATEPackage_DIP:DIP-4_W7.62mmU20
1LTV-817S_SPA_CANDIDATEPackage_DIP:DIP-4_W7.62mmU19
1MB10SDiode_SMD:Diode_Bridge_Vishay_MBLSD1
1MCP23017-E/SSPackage_SO:SSOP-28_5.3x10.2mm_P0.65mmU6
1MEMBRANE_REFConnector_Phoenix_MSTB:PhoenixContact_MSTBVA_2,5_9-G-5,08_1x09_P5.08mm_VerticalJ6
1NXE1S0505MC-R7Converter_DCDC:Converter_DCDC_Murata_NXExSxxxxMC_SMDU8
1OPA333AIDBVRPackage_TO_SOT_SMD:SOT-23-5U18
1OPERATING_CONTROLConnector_Phoenix_MSTB:PhoenixContact_MSTBA_2,5_7-G-5,08_1x07_P5.08mm_HorizontalJ2
1RFB5V_BOT_TBDResistor_SMD:R_0805_2012MetricR6
1RFB5V_TOP_TBDResistor_SMD:R_0805_2012MetricR5
1RON5V_TBDResistor_SMD:R_0805_2012MetricR7
1SAFETY_STACKConnector_Phoenix_MSTB:PhoenixContact_MSTBA_2,5_7-G-5,08_1x07_P5.08mm_HorizontalJ3
1SAFETY_STATIC_OKTestPoint_Pad_D2.0mmTP5
1SFS_ADC_FILTER_TBDCapacitor_SMD:C_0805_2012MetricC10
1SFS_HIGH_REF_BOT_TBDResistor_SMD:R_0805_2012MetricR39
1SFS_HIGH_REF_TOP_TBDResistor_SMD:R_0805_2012MetricR38
1SFS_INPUT_SERIES_TBDResistor_SMD:R_0805_2012MetricR27
1SFS_LOW_REF_BOT_TBDResistor_SMD:R_0805_2012MetricR37
1SFS_LOW_REF_TOP_TBDResistor_SMD:R_0805_2012MetricR36
1SFS_RANGE_OK_PULLUP_TBDResistor_SMD:R_0805_2012MetricR31
1SMBJ51CADiode_SMD:D_SMBTVS1
1THERMISTORConnector_Phoenix_MSTB:PhoenixContact_MSTBA_2,5_2-G-5,08_1x02_P5.08mm_HorizontalJ4
1THERMISTOR_AFE_TBDPackage_TO_SOT_SMD:SOT-23-6U14
1THERM_ADC_FILTER_TBDCapacitor_SMD:C_0805_2012MetricC9
1THERM_HIGH_REF_BOT_TBDResistor_SMD:R_0805_2012MetricR35
1THERM_HIGH_REF_TOP_TBDResistor_SMD:R_0805_2012MetricR34
1THERM_LOW_REF_BOT_TBDResistor_SMD:R_0805_2012MetricR33
1THERM_LOW_REF_TOP_TBDResistor_SMD:R_0805_2012MetricR32
1THERM_PULLUP_TBDResistor_SMD:R_0805_2012MetricR24
1THERM_RANGE_OK_PULLUP_TBDResistor_SMD:R_0805_2012MetricR30
1TH_FEEDBACKTestPoint_Pad_D2.0mmTP8
1TH_OPTO_LIMIT_A_TBDResistor_SMD:R_0805_2012MetricR13
1TH_OPTO_LIMIT_B_TBDResistor_SMD:R_0805_2012MetricR14
1TH_OPTO_PULLUP_TBDResistor_SMD:R_0805_2012MetricR15
1TLV6700DDCR_SFSPackage_TO_SOT_SMD:SOT-23-6U17
1TLV6700DDCR_THERMPackage_TO_SOT_SMD:SOT-23-6U16
1TPS3823-33DBVRPackage_TO_SOT_SMD:SOT-23-5U4
1TPS3839G33DBZRPackage_TO_SOT_SMD:SOT-23-3U3
1V47ZA1PVaristor:RV_Disc_D7mm_W3.9mm_P5mmMOV1
1VAC24_OPTO_LIMIT_A_TBDResistor_SMD:R_0805_2012MetricR19
1VAC24_OPTO_LIMIT_B_TBDResistor_SMD:R_0805_2012MetricR20

The 85 most common of 95 parts.

Questions

How big is the Mastertemp esp32 PCB?

It measures 160 × 100 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Mastertemp esp32 use?

95 parts, built around the ESP32-WROOM-32E-N16, NXE1S0505MC-R7, ADS1115IDGSR and LM5164DDAR. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Mastertemp esp32 KiCad files?

From the ryanbjohnson/PentairMasterTempESP32 repository on GitHub, at the commit this page was made from: the board is pcb/mastertemp_esp32/mastertemp_esp32.kicad_pcb and its schematic pcb/mastertemp_esp32/mastertemp_esp32.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Mastertemp esp32 design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers88 × 130 mmWindowmaster controller v2, the printed circuit board in 3D

    Windowmaster controller v2

    Simplycissmus/windowmaster-s3-controller

    Open hardware and ESP32-S3 firmware for a local 24 V window actuator controller with MQTT and Home Assistant integration.

    68 parts1
  • 4 layers110 × 90 mmFilMachine Mainboard, the printed circuit board in 3D

    FilMachine Mainboard

    yesnoj/FilMachine_Reworked

    FilMachine is an automated film processing machine designed for photographic film development. It handles the entire process: chemical baths, water rinses, temperature regulation, and motor-driven film agitation — all…

    205 parts
  • 4 layers95 × 60 mmRubyLink revA, the printed circuit board in 3D

    RubyLink revA

    Misaka0x2730/RubyLink

    Hardware platform for Miyako-Link based on RP2040

    219 parts2
  • 2 layers100 × 50 mmCan iso, the printed circuit board in 3D

    Can iso

    karimf1/J939-transceiver

    This project is an isolated CAN/J1939 transceiver breakout on a 2-layer board. It includes a DE-9 or terminal block and termination jumper.

    41 partsMIT
  • 2 layers68.5 × 34.3 mmCurrent Sensor, the printed circuit board in 3D

    Current Sensor

    ExcessiveMotion/drive-hardware

    36 parts175CERN-OHL-W-2.0
  • 2 layers100 × 65 mmSection, the printed circuit board in 3D

    Section

    BennetLeff/temper

    a breville control freak ++

    25 parts1
  • 4 layers238 × 132 mmCircuit review proof, the printed circuit board in 3D

    Circuit review proof

    Resident-X/brew-state

    brew-state: bare-metal C state estimation and forward-horizon profiling for the Sunbeam EM7000. Built with Staircase.

    60 partsMIT
  • 6 layers15.6 × 19.7 mmADC Board, the printed circuit board in 3D

    ADC Board

    esl-epfl/X-MODs

    Modular hardware platform based on the RISC-V X-HEEP family architecture developed at ESL, targeting ultra-low-power consumption and miniaturization, facilitating the creation of wearable devices for clinical trials

    74 parts3