DRSSTC-Fiber-Optic-Interrupter

Public

@alberto0235

Download board files

Files for version 1. Pick what you came for.

Share DRSSTC-Fiber-Optic-Interrupter

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading 3D model… large boards can take a moment.

README

⚡ DRSSTC Fiber-Optic Interrupter — V1.2


📋 Project Summary

This repository contains the hardware design for a custom interrupter control board built for a Dual Resonant Solid State Tesla Coil (DRSSTC).

While the high-power driver is the "brain" of the system, the interrupter plays a fundamental role: it generates the PWM signal that is sent to the driver, which in turn generates the gate drive pulses to modulate the Tesla Coil's output.

Operating near a resonant RF system means dealing with significant EMI. To address this, the board relies on fiber optic transmitters to electrically isolate the control logic from the high-voltage side, alongside a controlled-impedance layout for high-speed digital interfaces and a hardware-level safety interlocking system.

Key features include:

  • Total galvanic isolation of the control outputs via 2 fiber optic channels, featuring a versatile dual-footprint design.
  • Deterministic hardware safety chain (E-brake) capable of cutting optical output power and halting MCU timers.
  • Controlled-impedance routing on USB, FSMC, and SDIO interfaces.
  • Flexible power architecture supporting USB-C bus power or an optional rechargeable battery (e.g., Samsung 30Q 3000mAh) via a dedicated charging IC and a 3.3V buck regulator.

🔗 Explore the design: View the full Schematic (PDF)

Status Note: The hardware design, fabrication, and assembly are complete. The board is currently undergoing bench validation and bring-up, while firmware development (STM32CubeMX HAL + application layer) is in progress.


🔧 Key Specifications & Features

ParameterValue / Detail
MCUSTM32F405VGT6 — ARM Cortex-M4 @ 168 MHz, LQFP-100
PCB Layers4-layer controlled-impedance stackup (JLCPCB JLC04161H-3313)
System Rail3.3 V — generated by a synchronous buck converter
Power InputUSB-C (bus power) or Li-ion battery — Charger/Power-path: BQ24075RGT · Protection: BQ29700DSERG · Buck: TLV62569DBV
Outputs2x Galvanically isolated fiber optic channels (Dual-footprint: HFBR-1412TZ or IF E97)
Optical Rail3.3 V — Switched by a PMOS tied to the E-brake safety chain
Safety ChainHardware E-brake: cuts PMOS power + triggers interrupts to halt STM32 timers
Display InterfaceFSMC 16-bit 8080 Mode — 50 Ω impedance-controlled. Target display: ER-TFT028A2-4 (IM3=0, IM2=0, IM1=0, IM0=1).
StorageSD card via SDIO — 50 Ω impedance-controlled
USB InterfaceFull-speed USB 2.0 — 90 Ω differential impedance
Clock SourceExternal 24 MHz crystal oscillator
User InterfaceRotary encoders + tactile push buttons
External/DebugUART header (with 100 Ω series resistors) for debug or additional modules + Tag-Connect SWD
Length MatchingApplied on USB D+/D−, FSMC data/address bus, and SDIO data lines
Design ToolKiCad 9.0

🏆 Hardware Engineering Highlights

This section details some of the specific design choices made during the layout routing and stackup definition.

📡 Signal Integrity

  • USB 2.0 (Full Speed): The D+/D− pair is routed as a 90 Ω differential pair, calculated using the Saturn PCB Toolkit. Intra-pair skew is minimized across the routing path.
  • FSMC & SDIO: Routed at 50 Ω characteristic single-ended impedance. For the SDIO protocol, 33 Ω series termination resistors were placed as close as possible to the MCU source to suppress reflections.
  • UART / External Header: 100 Ω series resistors were added to the TX/RX lines near the connector. Since no TVS diodes were implemented at the silicon level for this header, these resistors provide a basic level of protection against spikes during manual probing or module connection.
USB 2.0 (90 Ω Differential Target)FSMC & SDIO (50 Ω Single-Ended Target)

🧱 Stackup & Routing Strategy

  • 4-Layer Stackup: Configured as Signal+PWR / GND / GND / Signal+PWR.
  • Return Paths: Layers 2 and 3 provide solid, unbroken ground reference planes for the high-speed routing on the top and bottom layers.
  • Layer Transitions: Whenever a high-speed signal transitions from Layer 1 to Layer 4, adjacent GND stitching vias were placed next to the signal via to ensure an uninterrupted return current path between the two ground planes.

🔒 Safety Architecture

  • Galvanic Isolation & Transmitter Flexibility: The commands sent to the driver leave the board exclusively through the fiber optic transmitters. This prevents ground loops and high-voltage transients from traveling back into the control board logic. To maximize flexibility, each of the two optical channels features a dual-footprint design. You can independently populate either an HFBR-1412TZ or an IF E97 transmitter per channel. The onboard current-limiting resistors are specifically calculated and routed for these two standard components.
  • Hardware E-brake Mechanism:
    • The E-brake switch is normally closed (NC) to GND. When pressed — or if the cable is accidentally disconnected — a pull-up resistor drives the PMOS gate to 3.3 V, switching it off. This ensures the system fails safe on cable break, not just on deliberate actuation.
    • Action 1 (Hardware): Pressing the E-brake disconnects the GND path. This immediately switches off a PMOS on the 3.3V optical rail, physically de-energizing the fiber transmitters and guaranteeing zero output, completely independent of the microcontroller's state.
    • Action 2 (MCU IRQ): The same physical event asserts a hardware interrupt on the STM32, halting the PWM timers in the fastest possible IRQ context.
    • Action 3 (Software IRQ): A software-level handler serves as a secondary redundant stop mechanism.

📁 Repository Structure

DRSSTC-Interrupter/
│
├── Hardware/
│   ├── KiCad/
│   │   ├── Interrupter/              ← KiCad project files
│   │   └── Libraries/                ← Additional libraries
│   └── Exports/
│       ├── Schematic_Interrupter_v1.2.pdf
│       └── PCB_v1.2.png
│
├── Fabrication/
│   ├── Gerbers/
│   ├── BOM_Interrupter_v1.2.csv
│   └── InteractiveBOM.html
│
├── Docs/
│   ├── Impedance_Calculations/
│   │   ├── USB_90ohm_Differential.png
│   │   └── FSMC_SDIO_50ohm_SingleEnded.png
│   └── Stackup/
│       └── JLCPCB_Stackup_Reference.png
│
├── Firmware/
│   └── STM32CubeMX/
│       └── Interrupter.ioc           ← Peripheral configuration (WIP)
│
└── README.md

🛠️ Tools Used

ToolVersionPurpose
KiCad EDA9.0Full schematic capture and 4-layer PCB layout
STM32CubeMX6.16.0MCU peripheral configuration, clock tree, HAL code generation (WIP)
Saturn PCB Toolkit8.39Controlled impedance calculation (90 Ω differential and 50 Ω single-ended)

⚠️ Disclaimer

This project outlines a control board intended for use with high-voltage equipment capable of generating potentially lethal electrical discharges. All hardware documentation in this repository is provided for educational and portfolio purposes only. The author assumes no liability for any damage, injury, or loss resulting from the use or misuse of this material.


👤 Author

Alberto Marrone MSc Student in Electronics Engineering — Politecnico di Milano LinkedIn

Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.