Skip to the content
PCBKitNew board
4 layers170 × 100 mmIo master, the printed circuit board in 3D

Dominate the I/O!

Size
170 × 100 mm
Copper layers
4
Thickness
1.6 mm
Parts
674
Nets
387
Pads
1,694
Tracks, vias
5,137, 684
Pours
22
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
12 Sep 2019
Updated
25 Apr 2020

Overview

Io master is an open-source printed circuit board by csinko, from the csinko/io-master repository on GitHub, published under the MIT licence. It is a 4-layer board of 170 × 100 mm with 674 parts on 387 nets, routed with 5,137 tracks and 684 vias.

It is built around the LM7171BIN, NCV20074D and ADP5070AREZ-R7, with the TS3011ILT, PI5A3157CEX and MMBT3906 among its other parts. Its parts include 262 resistors, 118 capacitors, 36 diodes, 30 ICs and 26 transistors.

Main components

11

README

README.md

io-master

Dominate the I/O!

Subsystems Overviews

GUI

The purpose of the GUI interface is to create a user friendly yet customizable program to help users tell the micro-controller to use whatever protocols that the user wishes to use from the provided list. The interface will include drop down menus to adjust the protocol that the board will use. This interface will also allow the user to select what information they want to send through the device as well as start and stop the flow of information through the device. The GUI will also define the hardware pins and clock speeds needed to run whichever protocol is selected. This includes setting the voltage levels that the board will expect to see. This will define what is seen as a 1 or a 0. The gui will most likely be done using python. Possible challenges include figuring out which GUI base to use in python. Possible options are appJar, TkInter, PyQT, or Kivy. More research will be done on each to figure out which one is best suited for this project.

MCU Firmware

The MCU is responsible for reading and writing the logic. Firmware will need to be designed to load in data from the computer, connect it to the corresponding DMA register that routes to the correct output, and stream data as it comes in. Likewise, the firmware will also need to read in data over the DMA, and transfer it to send to the computer when appropriate. Strict scheduling and context switching will need to be designed in order to ensure smooth operation at high frequencies. Other contexts will need to be considered, such as reading from one set of I/O and writing to another set, or recording logic data read in to an SD card.

MCU Power and Interface

MCU Power and Interface is responsible for receiving configuration and executing commands. These commands will come through the serial bus and need to be parsed/decoded. Execution will include adjusting the clock speed, target voltage levels, and re-configuring pins as specified by the commands received.

These capabilities will be crucial for switching between protocols on the multi-use pins. The challenges will be primarily with creating a good control scheme for managing all the necessary multiplexers to route signals to all the proper pins, at the correct speed and voltages.

I/O Level Shifting and Logic

The Level Shifting and Logic Subsystem is responsible for providing electrical conversion between the microcontroller interface and the device under test. This includes acting as an output and input to the microcontroller, providing logic-high, logic-low, and floating output states, bidirectional logic-level conversion, and capability to drive/receive differential or single-ended lines. This block should be fully configurable via control signals from the microcontroller. This includes setting the high and low voltages, optional pull-up/pull-down resistors, and multiplexing the line between single-ended and differential hardware. Design challenges include implementing a bidirectional differential transceiver and ensuring that multiplexing does not affect high speed operation.

Circuit Protection

Circuit protection is a crucial part of any device to help safeguard against unexpected and unplanned power issues. This is important to prevent injury to users, damage to the device and potentially fire. This will include having fuses, diodes, conformal coating, reverse polarity protection, over voltage protection and will protect against accidental grounding. Some challenges that may occur is due to the learning curve of designing the circuit protection circuit. Designing a circuit that can account for over voltage protection, short circuit protection, reverse polarity protection, etc and maintain a small footprint on a circuit board could prove to be difficult. Accounting for different/higher voltage levels used by the different protocols may become a challenge.

Parts

674
QtyValueFootprintReferences
107100KResistor_SMD:R_0603_1608MetricR10, R12, R102, R103, R104, R105, R106, R107, R112, R113, R117, R118, R126, R127, R128, R129 +91
690.1uCapacitor_SMD:C_0603_1608MetricC15, C16, C17, C18, C19, C20, C21, C22, C111, C112, C113, C114, C115, C116, C117, C118 +53
45TestPointTestPoint:TestPoint_Pad_D1.0mmTP1, TP10, TP11, TP12, TP13, TP109, TP120, TP121, TP125, TP126, TP127, TP128, TP129, TP130, TP131, TP132 +29
3810KResistor_SMD:R_0603_1608MetricR100, R101, R108, R109, R116, R124, R125, R136, R137, R139, R140, R151, R152, R154, R155, R166 +22
25110KResistor_SMD:R_0603_1608MetricR48, R58, R59, R60, R176, R177, R178, R179, R180, R181, R182, R183, R194, R198, R200, R203 +9
251MResistor_SMD:R_0603_1608MetricR46, R66, R67, R68, R184, R185, R186, R187, R188, R189, R190, R191, R197, R199, R202, R205 +9
1210uCapacitor_SMD:C_0805_2012MetricC4, C41, C46, C64, C65, C66, C67, C90, C91, C92, C93, C100
11RResistor_SMD:R_0603_1608MetricR1, R2, R3, R4, R9, R77, R78, R91, R195, R196, R209
10LM7171Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU11, U12, U13, U15, U16, U28, U29, U30, U32, U33
91KResistor_SMD:R_0603_1608MetricR5, R11, R13, R19, R22, R30, R33, R39, R40
80Resistor_SMD:R_0603_1608MetricR110, R111, R114, R115, R228, R229, R232, R233
8120Resistor_SMD:R_0805_2012MetricR119, R120, R121, R122, R237, R238, R239, R240
81N4148Diode_SMD:D_SOD-323D17, D18, D21, D22, D25, D26, D33, D34
847KResistor_SMD:R_0603_1608MetricR86, R90, R92, R93, R204, R208, R210, R211
8CCapacitor_SMD:C_0603_1608MetricC55, C56, C59, C81, C82, C85, C102, C103
8MM3Z15VST1GDiode_SMD:D_SOD-323D16, D20, D24, D32, D36, D37, D38, D39
8MMBT3906Package_TO_SOT_SMD:SOT-323_SC-70Q4, Q7, Q12, Q14, Q16, Q18, Q21, Q26
61uCapacitor_SMD:C_0603_1608MetricC2, C10, C11, C43, C101, C106
6DMN63D8LDWPackage_TO_SOT_SMD:SOT-363_SC-70-6Q10, Q11, Q13, Q15, Q24, Q25
6MMBT3904Package_TO_SOT_SMD:SOT-323_SC-70Q3, Q6, Q9, Q17, Q20, Q23
6NCV20074Package_SO:TSSOP-14_4.4x5mm_P0.65mmU6, U19, U20, U21, U23, U37
5CCapacitor_SMD:C_1210_3225MetricC40, C45, C99, C109, C110
42Resistor_SMD:R_0603_1608MetricR123, R138, R153, R247
420pCapacitor_SMD:C_0603_1608MetricC12, C13, C33, C34
46.8KResistor_SMD:R_0603_1608MetricR134, R149, R164, R258
4DG448DVPackage_SO:TSOP-6_1.65x3.05mm_P0.95mmU17, U18, U34, U35
4DMG1029SVPackage_TO_SOT_SMD:SOT-563Q5, Q8, Q19, Q22
4M3MountingHole:MountingHole_3.2mm_M3_PadH1, H2, H3, H4
4MM3Z9V1ST1GDiode_SMD:D_SOD-323D14, D15, D28, D29
4REDLED_SMD:LED_0603_1608MetricD19, D23, D27, D35
4TS3011Package_TO_SOT_SMD:SOT-353_SC-70-5U7, U9, U24, U26
4YEL/GRNio-master:LED_Kingbright_APTB1615YSGCD7, D8, D9, D11
322uCapacitor_SMD:C_1210_3225MetricC5, C107, C108
3330Resistor_SMD:R_0603_1608MetricR27, R28, R29
34.7KResistor_SMD:R_0603_1608MetricR8, R16, R18
34.7uCapacitor_SMD:C_0805_2012MetricC8, C29, C37
3NSR0530HT1GDiode_SMD:D_SOD-323D13, D30, D31
21000pCapacitor_SMD:C_0603_1608MetricC72, C98
22.2uCapacitor_SMD:C_0805_2012MetricC7, C14
2B130LDiode_SMD:D_SMAD1, D2
2BLUELED_SMD:LED_0603_1608MetricD4, D5
2DG449Package_TO_SOT_SMD:SOT-23-8U14, U31
2PI5A3157Package_TO_SOT_SMD:SOT-363_SC-70-6U10, U27
2Q_NPN_BCEPackage_TO_SOT_SMD:SOT-323_SC-70Q1, Q2
1+15VTestPoint:TestPoint_Pad_D1.0mmTP169
1-15VTestPoint:TestPoint_Pad_D1.0mmTP170
10.1" HDRConnector_PinSocket_2.54mm:PinSocket_2x05_P2.54mm_VerticalJ4
10.1" HDRio-master:PinSocket_2x05_P2.54mm_Vertical_AltNumberingJ3
10.1AFuse:Fuse_1206_3216MetricF2
10.22uCapacitor_SMD:C_0603_1608MetricC104
10.47uCapacitor_SMD:C_0603_1608MetricC1
10.5AFuse:Fuse_1206_3216MetricF1
11-2TestPoint:TestPoint_Pad_D1.0mmTP123
110118193io-master:USB_Micro-B_Amphenol_10118193-0001LF_HorizontalJ2
110uio-master:L_Abracon_ASPI-0418FSL2
1118KResistor_SMD:R_0603_1608MetricR245
112KResistor_SMD:R_0603_1608MetricR45
1137KResistor_SMD:R_0603_1608MetricR244
115uInductor_SMD:L_Taiyo-Yuden_NR-50xxL3
12.32MResistor_SMD:R_0603_1608MetricR246
12.43MResistor_SMD:R_0603_1608MetricR243
1220KResistor_SMD:R_0603_1608MetricR47
124MHzio-master:Crystal_SMD_Murata_XRCGBY2
13-4TestPoint:TestPoint_Pad_D1.0mmTP152
13.3VTestPoint:TestPoint_Pad_D1.0mmTP19
133pCapacitor_SMD:C_0603_1608MetricC44
1390KResistor_SMD:R_0603_1608MetricR242
148MHzio-master:Crystal_SMD_Murata_XRCGBY1
15.36KResistor_SMD:R_0603_1608MetricR241
154-00166io-master:BarrelJack_Tensility_54-00166_HorizontalJ1
1820Resistor_SMD:R_0603_1608MetricR44
182pCapacitor_SMD:C_0603_1608MetricC105
182uio-master:L_Bourns_SRF0703L1
1ADP5070AREZPackage_SO:ETSSOP-20-1EP_4.4x6.5mm_P0.65mm_EP3x4.2mmU36
1AZ1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U1
1DCINTestPoint:TestPoint_Pad_D1.0mmTP17
1DDZ5V6ASFDiode_SMD:D_SOD-323FD12
1DIFF12TestPoint:TestPoint_Pad_D1.0mmTP73
1DIFF34TestPoint:TestPoint_Pad_D1.0mmTP75
1DIFF56TestPoint:TestPoint_Pad_D1.0mmTP91

The 541 most common of 674 parts.

Questions

How big is the Io master PCB?

It measures 170 × 100 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Io master use?

674 parts, built around the LM7171BIN, NCV20074D, ADP5070AREZ-R7 and TS3011ILT. 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 Io master KiCad files?

From the csinko/io-master repository on GitHub, at the commit this page was made from: the board is KiCAD/io-master.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

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

Similar boards

  • 4 layers96.5 × 96.5 mmColorlight i5-motherboard, the printed circuit board in 3D

    Colorlight i5-motherboard

    FPiorski/colorlight-i5-motherboard

    A base board for the colorlight i5 FPGA module with a bunch of connectors

    76 parts2
  • 2 layers72.5 × 55 mmB PSU 0x00, the printed circuit board in 3D

    B PSU 0x00

    EmilsSturitis/BPSU

    Bipolar power supply board, for op-amp's and other things

    78 parts1
  • 6 layers76 × 101 mmBitaxeAva, the printed circuit board in 3D

    BitaxeAva

    bitaxeorg/bitaxeAva

    Quad Canann A3197

    162 partsCERN-OHL-S-2.0
  • 6 layers76 × 101 mmBitaxeproto, the printed circuit board in 3D

    Bitaxeproto

    bitaxeorg/bitaxeproto

    quad Proto MC3 bitaxe

    229 partsCERN-OHL-S-2.0
  • 2 layers45 × 23 mmRail transceiver, the printed circuit board in 3D

    Rail transceiver

    SebastianOberschwendtner/OTP24_oTrainControl

    Open source motor controller and signal decoder for model railways.

    58 partsGPL-3.0
  • 2 layers84.1 × 47.3 mmFinalPCB, the printed circuit board in 3D

    FinalPCB

    daumemo/DIY-Signal-Generator

    DIY portable Wi-Fi enabled signal generator

    143 parts45
  • 2 layers48.3 × 38.6 mmSAW WAVEAMP, the printed circuit board in 3D

    SAW WAVEAMP

    ShivanshVij/UWNRG-Amplifier

    PCB Design in KiCAD for the UWNRG's SAW Team's Sine Wave Amplifier

    9 parts1
  • 4 layers108.5 × 107.7 mmPid, the printed circuit board in 3D

    Pid

    bec5-group/pid-controller

    Part Number|Power|Input|Output|Packaging -----------|-----|-----|------|--------- AD8421BR|±2.5V ±18V (2mA)|(V-)+2.3V (V+)-1.8V|(V-)+1.2V (V+)-1.6V|8-MSOP / 8-SOIC LMH6505|±3.5V ±6V (2μA)|±7mA / ±0.6V|±2.4V ±3V|8-MSOP /…

    428 parts