Skip to the content
PCBKitNew board
2 layers63 × 41.7 mmController, the printed circuit board in 3D

Memory Fault Injection Tool

Size
63 × 41.7 mm
Copper layers
2
Thickness
1.6 mm
Parts
18
Nets
70
Pads
140
Tracks, vias
120, 31
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
21 Oct 2021
Updated
26 Jul 2022

Overview

Controller is an open-source printed circuit board by microsoft, from the microsoft/mfit repository on GitHub, published under the MIT licence. It is a 2-layer board of 63 × 41.7 mm with 18 parts on 70 nets, routed with 120 tracks and 31 vias.

Its parts include 4 diodes, 3 ICs and 1 connector. It belongs with the NXP (LPC, Kinetis, i.MX RT) boards of this library.

README

README.md

mFIT: A Bump-in-the-Wire Tool for Plug-and-Play Analysis of Rowhammer Susceptibility Factors

This repository captures the design and software for mFIT (the memory fault injection tool).

mFIT interposes between the CPU and a DDR4 DIMM and can programmatically suppress the REF command. This allows researchers to study DRAM DIMMs in the absence of the refresh operation.

Please refer to the Tech Report MSR-TR-2021-25 for a technical description of mFIT.

A picture of mFIT in a server

Repository organization

  1. hardware contains the KiCAD schematics and PCB desings,
  2. firmware contains the code that runs on mFIT's control board,
  3. client contains the client code that interacts with mFIT's control board.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

Parts

18
QtyValueFootprintReferences
5TestPointTestPoint:TestPoint_Pad_D1.5mmTP1, TP2, TP3, TP4, TP5
4LEDResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderD1, D2, D3, D4
4MountingHole_PadMountingHole:MountingHole_2.2mm_M2_Pad_ViaH1, H2, H3, H4
1470Resistor_THT:R_Array_SIP5RN1
1Conn_01x06_FemaleConnector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ1
1TXB-0104-breakouttxb0104-breakout:TXB0104-breakoutU2
1Teensy3.6teensy:Teensy35_36U1
1power-reg-1.8Vpower-reg-breakout:breakout-power-regU3

Questions

How big is the Controller PCB?

It measures 63 × 41.7 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Controller use?

18 parts. 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 Controller KiCad files?

From the microsoft/mfit repository on GitHub, at the commit this page was made from: the board is hardware/control-board/controller/controller.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Controller 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).

More from microsoft/mfit

1
  • 2 layers133.4 × 23.9 mmFault injector, the printed circuit board in 3D

    Fault injector

    microsoft/mfit

    Memory Fault Injection Tool

    14 parts10MIT

Similar boards

  • 2 layers27.9 × 16.5 mmPowerSSO-24 breakout, the printed circuit board in 3D

    PowerSSO-24 breakout

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    18 parts1.2k
  • 2 layers42.7 × 13.7 mmStm32-mini12864, the printed circuit board in 3D

    Stm32-mini12864

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    18 parts1.1kGPL-3.0
  • 2 layers41.2 × 46.6 mmThumb cluster left, the printed circuit board in 3D

    Thumb cluster left

    JesusFreke/lalboard

    A 3D-printed keyboard inspired by the DataHand

    18 parts993
  • 2 layers44 × 51.3 mm4272MAVcoder R4, the printed circuit board in 3D

    4272MAVcoder R4

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    18 parts915
  • 2 layers28.3 × 14.3 mmTap Photosensor PCB, the printed circuit board in 3D

    Tap Photosensor PCB

    VoronDesign/Voron-Tap

    Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:

    18 parts716GPL-3.0
  • 2 layers20.3 × 15.2 mmL0 stepper driver, the printed circuit board in 3D

    L0 stepper driver

    Luos-io/luos_engine

    Open-source and real-time orchestrator for cyber-physical-systems, to easily design, test and deploy embedded applications and digital twins.

    18 parts546MIT
  • 2 layersMooltipass, the printed circuit board in 3D

    Mooltipass

    limpkin/mooltipass

    Github repository dedicated to the mooltipass project

    18 parts531
  • 2 layers42.5 × 28.8 mmC5VRX JACK DIY V2, the printed circuit board in 3D

    C5VRX JACK DIY V2

    Twotoz/C5VRX

    Ultra-minimal, zero-CPU 5.8 GHz analog FPV video receiver using ESP32-C5 Wi-Fi 6 PHY MODEM_DIAG, BitScrambler WBFM demodulation & resistor DAC CVBS

    18 parts515GPL-3.0