Jashwanth Bamidi

PCB design, bring-up and test Internship · completed

Archer Aviation

Cooling flow on an inverter test stand was set by hand. I built the board that sets it over the network and closes the loop on measured flow.

Role
Electrical Engineering Intern
When
May – August 2026 · San Jose, California
Tools
Altium Designer, ATmega328P, W5500, LM358, C++, Python, SCPI, CAN-FD
SPIPWM0–5 V0–10 VflowADCRemote setpointTCPEthernetW5500 / WIZ850ioControl loopATmega328PPWM to analogRC low-passGain stageLM358, nominal 2×Valve driverexternal, 0–10 V inFlow sensor0–10 V outDividerinto ADC range24 V stand supply5 V and 3.3 Vlocal rails
  1. Flow sensor0–10 V out
  2. 24 V stand supply
Control loop. Parses commands, reads averaged feedback, runs feedback control with integral anti-windup, reports telemetry, and drops a stale command after 5 s without communication.
Illustrative. Flow-controller signal chain. Generalised functional drawing, not the company schematic. Select a block to see its role. Remote setpoint over Ethernet to an ATmega328P control loop, PWM and RC filter, a 2x gain stage and a 0 to 10 volt valve command; flow feedback returns through a divider to the ADC.

What I did

I owned the board end to end: architecture, Altium schematic and two-layer layout, fabrication outputs, sourcing, assembly, firmware and bring-up.

I also wired a 1000 V reliability stand for three inverters, automated instrument and CAN-FD gateway setup, and corrected a reliability test plan.

Result

  • Validated the 0–10 V command and feedback paths with injected voltages and ADC readback; three boards went onto inverter test stands.
  • Replaced a four-stage manual CAN-FD gateway setup with one Python script, checked against reference configurations.
  • Corrected a Coffin-Manson acceleration factor from 12.7 to 7.7 and derived a roughly 43-day chamber schedule.
  • The 43-day schedule is a plan, not a completed qualification campaign.
  • Diagrams are generalised; no internal schematics or bench details are shown.

Debugging

A 0.9 Ω short across the 24 V input

The first board measured 0.9 Ω from 24 V to ground. A copper-clearance rule had been entered in the wrong units, so the ground pour reached through-hole pads. I traced it from the measurement to the rule and specified the corrected revision.

Intended ruleground pour24 Vgap10 mil (0.254 mm) to the pourRule as enteredground pour24 Vpour touches padabout 0.18 mil: the pour reaches the pad
Illustrative. Why the board measured 0.9 Ω. Not to scale. The real gap was about 56 times smaller than intended. The intended clearance leaves bare board around the pad; the clearance entered in the wrong units lets the pour touch it.

More detail

Why the stand needed it

The old controller was a potentiometer and a local display. The new board runs from the 24 V stand supply and drives an external valve driver; it never powers the valve itself.

A hardwired E-STOP stops the stand. The firmware only decides what happens when the network goes quiet.

Signal chain and firmware

A W5500 Ethernet controller passes setpoints to an ATmega328P. PWM through an RC filter gives 0–5 V, and an LM358 stage with a gain of two makes the 0–10 V valve command.

Flow feedback is divided into the ADC range. The firmware runs feedback control with anti-windup, reports telemetry and drops a stale command after 5 s without communication. Loop tuning was not finished as a response optimisation.

Other bring-up and test work

Firmware review caught a revision written for a different Arduino MCU family, with a different SPI map and watchdog behaviour.

Supply control wrote, read back and verified every channel before enabling outputs.

The reliability plan had applied the worst-case temperature swing to every service cycle and used a board that was not the worst thermal case. Fixing both changed the acceleration factor.

Other design decisions
  • PWM and an RC filter instead of a DAC

    Filter an MCU timer output into an analog level. Instead of: a separate DAC.

    Fewer parts, but ripple and settling time tie the PWM rate, filter corner and loop rate together.

  • A gain stage between MCU and valve

    A nominal 2× op-amp stage from 0–5 V to 0–10 V. Instead of: rescaling at the driver.

    Matches the driver's range, but full scale depends on amplifier headroom and loading.

  • A communication fail-safe

    Drop the setpoint after 5 s of silence. Instead of: holding the last value.

    A stale command can't hold a valve open; it complements the hardwired interlocks rather than replacing them.