One-Wire Circuit Topology

Apple's MagSafe one-wire charging architecture appears deceptively simple: a single communication line carries both timing and load data between the magnetic connector and the power converter IC on the logic board. This contrasts sharply with earlier dual-rail designs that required separate sense and feedback paths.

The one-wire protocol operates as an open-drain logic bus. When idle, the line sits at approximately 3.3V via pull-up resistor. A MagSafe brick or attached device pulls this rail low to signal state changes. The timing of these low pulses encodes specific power delivery instructions: cable gauge detection, maximum wattage negotiation, and thermal throttle response.

On the logic board side, a specialized charging control IC (typically a TPS65982B or equivalent USB Power Delivery controller integrated with MagSafe-specific firmware) monitors this single wire and translates incoming pulses into PWM control signals for downstream buck converters. The entire charging topology depends on accurate timing edges and proper pull-up voltage reference.

Do not confuse one-wire MagSafe with classic one-wire protocols (DS18B20). Apple's implementation is proprietary and undocumented. Reverse-engineering from scope traces is the primary repair diagnostic method.

Connector Detection & Handshake

MagSafe detection begins the moment the magnetic connector makes physical contact. The brick firmware initiates a handshake sequence by asserting specific pulse trains on the one-wire line. The logic board's charging IC must recognize these patterns within a narrow window—typically 50–200 ms—or the system will not negotiate power delivery.

The handshake includes three critical exchanges:

  • Identity pulse: The brick sends a rapid 5–10 kHz square wave burst. The logic board measures frequency and pulse width to identify cable gauge (USB-C 3A, 5A, or custom high-current variants).
  • Capability negotiation: The board responds with its own frequency-modulated pattern indicating maximum input wattage (30W, 45W, 67W, 96W, etc.). Multi-bit encoding is used; clock frequency encodes voltage tier, duty cycle encodes current limit.
  • Acknowledgment lock: Once both sides agree on power parameters, the brick applies steady DC bias to the one-wire line and waits for sustained low-impedance confirmation from the board. Failure to achieve this state within ~300 ms triggers a timeout and the charging session aborts.

Common handshake failures occur when the logic board's pull-up resistor is damaged, open, or incorrectly valued. Typical pull-up resistance is in the range of 10–50 kΩ to 3.3V. If measured at TP_MAGSAFE_1WIRE (typically on the main power distribution block), the voltage should rise to 3.2–3.3V within 10 ms of soft power-on.

Load-Side Control & Regulation

Once the handshake completes, the one-wire line transitions to load-side control mode. The charging IC continuously modulates the wire's impedance to regulate charging voltage and current drawn from the power supply. This is achieved through a simple load-switch circuit: the charging IC drives a MOSFET gate pin tied to the one-wire line through a series resistor (typically 100–470Ω).

When the IC needs to signal "reduce current," it briefly pulls the one-wire line low by switching its load FET on. The duration and frequency of these pulls encode the desired adjustment. Most modern MagSafe implementations use a proprietary pulse-width modulation (PWM) scheme:

  • ~10 kHz clock: One-wire toggles at a fixed 10 kHz base frequency during active charging.
  • Duty cycle = load percentage: 20% duty (2 µs low, 8 µs high per 10 µs cycle) requests 20% of negotiated maximum current. 100% duty requests full power.
  • Zero-current state: Sustained high (>500 ms no pulls) = charging paused or trickle mode.

The brick's power supply senses these modulations via its own sense circuitry and adjusts its output voltage and current accordingly. If the one-wire line is stuck high or stuck low, the brick defaults to its minimum safe current (0.5–1.0A at 20V) to prevent damage.

One-Wire State Expected Voltage Typical Frequency Interpretation
Idle / detached N/A or floating No brick connected
Handshake phase 3.0–3.3V baseline 5–15 kHz pulses Negotiating power tier
Active charging (20%) 2.0–3.2V oscillating 10 kHz PWM 20% duty cycle
Active charging (100%) 0.0–0.5V sustained 10 kHz PWM 100% duty cycle (pulled low)
Stuck low <0.1V persistent Short-circuit or FET failure
Stuck high >3.2V persistent Open circuit, pull-up missing

Repair Diagnostics & Troubleshooting

When a machine fails to charge despite a working USB-C brick and cable, the one-wire circuit is often the culprit. Begin by measuring the one-wire test point with a DC voltmeter while the brick is attached but power is off:

  • Stuck low (<0.5V): The charging IC's load FET or pull-down path is shorted. Check for liquid damage, burnt components, or excessive parasitic capacitance. Scope the line at 1V/div, 10 µs/div. If you see a continuous square wave at 10 kHz, the IC is alive but cannot control the line—likely a dead FET inside the IC or broken bond wire in its output stage.
  • Stuck high (>3.0V, no modulation): The pull-up resistor is open or the IC's communication pin is tri-stated (dead). Check continuity of the pull-up from VCORE_3V3 to the one-wire rail. Typical value: 22 kΩ to 47 kΩ. If the resistor is intact, the charging IC is likely non-responsive—test its supply rails and reset line.
  • Correct voltage but no handshake within 2 seconds: The charging IC firmware may be corrupted or the IC itself is defective. Connect a high-speed USB oscilloscope probe (minimum 100 MHz bandwidth) to the one-wire test point. Trigger on the rising edge and capture at least 20 ms of data. A healthy handshake should show rapid pulse-train bursts every 50–100 ms for the first ~300 ms after brick insertion.

On the brick side, similar diagnostics apply. If the brick shows no activity (no LED, no modulation), check its internal one-wire pull-up resistor and the firmware state machine. Many bricks default to 20V / 0.5A output if the handshake times out, which is insufficient for modern MacBooks.

Reference the MacBook Pro A1502 / 820-3476 Repair Guide for detailed one-wire scope traces and step-by-step handshake capture procedures. The charging control topology is nearly identical across all modern MagSafe-equipped models.

For machines with partial charging (e.g., 30W instead of 96W), the handshake is likely completing but the negotiation is failing. This often indicates a damaged sense resistor on the power output rail or a faulty current-feedback amplifier. The IC receives incorrect voltage telemetry and downgrades the negotiated power tier to protect the supply.

Component-level repairs are possible: TPS65982B (or equivalent) firmware can sometimes be reflashed via JTAG if the bus is accessible. Pull-up resistor replacement is a standard microsoldering task (0402 package, 22–47 kΩ, 1% tolerance recommended). If the entire charging IC is defective, only full replacement with matching firmware load solves the issue permanently.

Advanced Scope Capture Methodology

To fully understand a faulty one-wire circuit, always capture protocol traffic with a 100+ MHz digital storage oscilloscope or logic analyzer. Set probe attenuation to 1:1 (not 10:1) to maintain sensitivity at 3.3V logic levels. Use a 10–50 ns/div horizontal timebase during handshake and 5–10 µs/div during steady-state charging.

Capture at minimum two sequences: (1) initial detection and handshake, (2) steady-state charging after 2 seconds. Export raw CSV data and inspect pulse timing with a frequency counter or FFT tool. The handshake burst should show harmonic content at 5, 10, and 15 kHz; the steady-state should be a pure 10 kHz square wave with modulated duty cycle.

If the one-wire line is present but the system does not charge, cross-reference the captured protocol against your specific MacBook model's published schematic. Most and logic boards have identical one-wire implementations, making cross-reference comparison highly valuable for diagnosis.

The one-wire test point is often labeled TP_MAGSAFE_SENSE, TP_MGSF_1W, or simply D+_SENSE on Apple schematics. If your board lacks clear TP silkscreen, follow the 22 kΩ pull-up resistor to ground; the junction is your scope probe point.
New articles every day

Get notified when new technical articles are published — no spam, unsubscribe anytime.

New articles every day

Get notified when new technical articles are published — no spam, unsubscribe anytime.

New articles every day

Get notified when new technical articles are published — no spam, unsubscribe anytime.

New articles every day

Get notified when new technical articles are published — no spam, unsubscribe anytime.

Stay updated
New articles every day

Get notified when new technical articles are published — no spam, unsubscribe anytime.