Skip to the content
PCBKitNew board
6 layers140.8 × 81.3 mmGlitcher, the printed circuit board in 3D

glitcher

Size
140.8 × 81.3 mm
Copper layers
6
Thickness
5.72 mm
Parts
101
Nets
125
Pads
472
Tracks, vias
738, 29
Pours
1
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
18 Jul 2022
Updated
28 Jan 2025

Overview

Glitcher is an open-source printed circuit board by CreateRemoteThread, from the CreateRemoteThread/glitcher repository on GitHub. It is a 6-layer board of 140.8 × 81.3 mm with 101 parts on 125 nets, routed with 738 tracks and 29 vias.

It is built around the CMOD A7-35T, SC0915 and IRF7807ZPBF, with the MAX4619CPE+ among its other parts. Its parts include 31 capacitors, 10 ICs, 7 diodes, 7 connectors and 5 switches.

Main components

4

README

README.md

glitcher

Glitcher Schematic

Introduction

Glitcher is a homebrew fault injection system, built around a Pi Pico and CMOD A7, with a MAX4619 and an irf7807 providing multiplexer and crowbar mosfet style glitching respectively. Generous GPIO (FPGA + Pi Pico) + SMA outputs are available.

This project is heavily inspired by the ChipWhisperer set of products.

Use

The Pi Pico is the simplest method of using this. Using a micro USB cable, access the MicroPython interface and use the glitcher library to control the FPGA's default firmware:

text
import glitcher

g = glitcher.Glitcher()
g.enablemux(True)                # enable max4619. crowbar always "on"
g.setmask(glitcher.SELECT_MOSFET)         # select mosfet for glitching
g.muxout(glitcher.SELECT_MUXA)            # switch x_out to x1
g.muxout(glitcher.SELECT_NONE)            # switch x_out to x0
g.rnr(delay=5,width=5)           # write delay/width, glitch output according to setmask

The Pi Pico uses only a serial port to talk to the FPGA at 115200bps, so you can swap it for some other uC / make a shield / whatever. Just replace self.u1 with a pyserial output if you want to use a control PC (enablemux is the only thing requiring the pi pico, just hardwire it idk).

Probably don't use g.muxout(0xF) - but do whatever you want.

Parts

101
QtyValueFootprintReferences
31CCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC1, C2, C10, C11, C12, C13, C14, C15, C16, C17, C18, C19, C20, C21, C22, C23 +15
9RResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderPULLUP_MAX4619_EN1, R1, R2, R3, R4, R5, R6, R7, R8
6LEDLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD1, D2, D3, D4, D5, D6
5Conn_01x03Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ3, J4, J5, J6, J7
5Conn_CoaxialConnector_Coaxial:SMA_Molex_73251-2120_EdgeMount_HorizontalHS2_OUT1, SMA_X1, SMA_Y1, SMA_Z1, TRIG_IN1
5SW_DPDT_x2all_lib:JS202011SCQNSW1_1V8_OUT1, SW2_1V2_OUT1, SW3_VADJ_OUT1, SW4_3V3_OUT1, SW5_2V5_OUT1
4Conn_01x20Connector_PinHeader_2.54mm:PinHeader_1x20_P2.54mm_VerticalJ_LEFTEXP_OUTER1, J_LEFTEXP1, J_RIGHTEXP_OUTER1, J_RIGHTEXP1
3Conn_01x02Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalPINS_X_INPUT1, PINS_Y_INPUT1, PINS_Z_INPUT1
2Conn_Coaxialall_lib:RF2-04A-T-00-50-GJ_HVPULSE1, J_TRIG2
2LD1117S33TR_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U7_3V3_OUT1, U9_3V3ALWAYS1
2SolderJumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP1, JP4
2SolderJumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP2, JP3
2TestPointTestPoint:TestPoint_Pad_D2.5mmTP3, TP4
110K RResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR10
11RResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR9
1Barrel_JackConnector_BarrelJack:BarrelJack_HorizontalJ1
1CMOD_A7Package_DIP:DIP-48_W15.24mm_Socket_LongPadsU2
1Conn_01x04Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ_EXT_UART1
1Conn_01x06Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ2
1FerriteBeadInductor_SMD:L_0805_2012Metric_Pad1.05x1.20mm_HandSolderFB1
1INDUCTORall_lib:inductor_2727_wurthL1
1LD1117S12TR_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U5_1V2_OUT1
1LD1117S18TR_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U4_1V8_OUT1
1LD1117S25TR_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U8_2V5_OUT1
1LEDLED_SMD:LED_0603_1608MetricD7
1NCP1117-ADJ_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U6_VADJ_OUT1
1RResistor_SMD:R_0603_1608MetricR11
1R_Potentiometerall_lib:TRIM_3361P-1-501GLFRV1
1SC0915all_lib:rpi_socket_fixedU1
1irf7807zPackage_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.29x3mmU4
1max4619cpe+Package_DIP:DIP-16_W7.62mm_Socket_LongPadsU3

The 96 most common of 101 parts.

Questions

How big is the Glitcher PCB?

It measures 140.8 × 81.3 mm and has 6 copper layers, 5.72 mm thick.

What parts does the Glitcher use?

101 parts, built around the CMOD A7-35T, SC0915, IRF7807ZPBF and MAX4619CPE+. 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 Glitcher KiCad files?

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

Can I use the Glitcher design in my own project?

Its repository states no licence, so its author keeps all rights: ask CreateRemoteThread before reusing the design.

Similar boards

  • 2 layers57.3 × 92.1 mmGlitchifier9000, the printed circuit board in 3D

    Glitchifier9000

    inconspicuous-username/Glitchifier9000

    Check out the schematics in this repo for more information!

    29 parts13
  • 4 layers76.2 × 71.1 mmFobosshield, the printed circuit board in 3D

    Fobosshield

    GMUCERG/fobos

    Flexible Open-source workBench fOr Side-channel analysis (FOBOS)

    170 parts18Apache-2.0
  • 2 layers52.5 × 44.3 mmPmod2, the printed circuit board in 3D

    Pmod2

    noopwafel/iceglitch

    cheap and terrible voltage glitcher hardware/software

    44 parts46
  • 4 layers120.6 × 72.4 mmBoard main, the printed circuit board in 3D

    Board main

    analogdevicesinc/education_tools

    Tools for education related platforms

    53 parts45
  • 2 layers76.2 × 49.5 mmDS projekt, the printed circuit board in 3D

    DS projekt

    OipRDDinoSaric/Controlling-analogue-switches-on-a-PIC-microcontroller

    Designing and soldering a PCB. Programming a PIC microcontroller using MP LAB X-IDE.

    34 parts
  • 4 layers111.8 × 80.8 mmPrototype1, the printed circuit board in 3D

    Prototype1

    nmikstas/atari_pokey

    Recreation of the Atari POKEY chip (work in progress)

    164 parts20
  • 2 layers284 × 128.5 mmXva1-ui, the printed circuit board in 3D

    Xva1-ui

    MacMannes/XVA1-User-Interface

    A hardware user interface for the XVA1 virtual analog synthesizer, inspired by the Hydrasynth's layout. The XVA1 (and its FM sibling the XFM2) is built on an Artix-7 FPGA but has no built-in UI — this project adds one.

    65 parts10GPL-3.0
  • 4 layers79 × 142 mmGuitarray control board, the printed circuit board in 3D

    Guitarray control board

    IIP-Group/polymap

    Repository for the PolyMap Hardware and PolyMap Studio VST Plugin (prototype version).

    757 parts4CERN-OHL-P-2.0