Skip to the content
4 layers203.8 × 115.3 mmPy dash pcb 7, the printed circuit board in 3D

The circuit board portion for PyDash

Size
203.8 × 115.3 mm
Copper layers
4
Thickness
1.6 mm
Parts
120
Nets
212
Pads
617
Tracks, vias
782, 494
Pours
14
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
29 Apr 2025
Updated
31 Oct 2026

Overview

Py dash pcb 7 is an open-source printed circuit board by JungleGim, from the JungleGim/PyDash_PCB repository on GitHub. It is a 4-layer board of 203.8 × 115.3 mm with 120 parts on 212 nets, routed with 782 tracks and 494 vias.

It is built around the SN65HVD231D, TPD8S009DSMR and NCV1117DT33T5G, with the EMIF06-MSD02N16, TPD2E009DRTR and SMTSO-M25-6ET among its other parts. Its parts include 34 capacitors, 26 resistors, 9 ICs, 9 diodes and 7 switches.

Main components

12

README

README.md

PyDash_PCB - Information

This readme covers the printed circuit board or PCB portion of the PyDash. For the App design, Enclosure design, or OS design, see the below repositories:

Introduction

The PyDash_PCB is a daughter board that contains the hardware required for a rPi compute module (CM4) to function as a processor to display information on a 7in screen.

Additional details on the design considerations, required packages, and key features are included in the "Methodology" section of this readme.

Project Status

Revlog

  • Rev 0: 06/02/2024
    • Initial issue
  • Rev1a: 05/19/2025
    • Fixed button numbering to be appropriate when viewing the screen
  • Rev2a: 02/15/2026
    • updates realted to Rev2.0a rebuild - includes new features and code architecture
    • Added micro SD socket for users to load dash config files
    • Updated USB port to USBC
    • Removed touch lines from screen and removed USB mux - no plans to utilize touch in future

Methodology

History

TBD: quick detail starting with the arduino + daughter board on the 5in display as a proof of concept

Key Considerations and Constraints

The following sections are some notes on the various considerations or any constraints when designing the display.

Power Supply

As built, with the sourced display and components in the BOM, the display uses approximately 350-400mA when operation, at 100% backlight.

Display

The chosen display is a 7inch 1024x600 IPS display sourced from waveshare link. The display is fastened to the carrier PCB via double-sided foam tape. The 40pin FPC jack directly connects to the HDMI output from the CM4.

To control the backlight via PWM, drive the "BL_en" pin high. The PWM signal is scaled from 1024 (100%) to 0 (0) for brightest to darkest.

Any HDMI compatable display should be able to be used with this design. While the FPC cable was a design choice, any other HDMI connection should be appropriate, depending on the chosen display.

Additional considerations for the HDMI hardware and driver configuration is contained in the "PyDash OS" readme.

PCB stackup

JLC PCB stackups for TDMS impedence considerations

  • Chosen stackup: JLC04121H-3313 – 1oz (0.035mm) outer layer

    • Chosen stackup option
    • Top to inner 1 and inner 2 to bot separation is 0.1
    • requires 0.18mm trace width for single-ended impedence target
    • 0.3mm separation for differential impedence target
  • Other available options with calculated requirements

    • JLC04121H-7628 - 1oz (0.035mm) outer layer
      • Top to inner 1 and inner 2 to bot separation is 0.2
      • requires 0.3mm trace width for single-ended impedence target
      • 0.25mm separation for differential impedence target
    • JLC04121H-1080 Stackup – 1oz (0.035mm) outer layer
      • Top to inner 1 and inner 2 to bot separation is 0.0764
      • requires 0.13mm width
      • 0.20mm separation for differential impedence target

Known bugs and bug fixes

No current known bugs

FAQ section

No current FAQ

Copyright and licensing information

GNU GPLv3

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Additional disclaimer

The information included is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and non-infringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software or tools included in this repository.

General Notes and References

While I am an engineer by trade, my area of focus is not computer architecture or system engineering. Likely some people have already looked at various aspects of the codebase and just shook their heads. That being said, I've compiled a list of considerations and notes for the project that have helped me along the way. These are listed below, in no particular order.

References

Throughout the project, I have used many references, related to various aspects/items of the project. These are all compiled in the list below, in no particular order

  • TBD any notable references

Parts

120
QtyValueFootprintReferences
14Standoff_M2.5_6ETuser:Standoff_M2.5_6ETH8, H9, H10, H11, H12, H13, H14, H15, H16, H17, H20, H21, H22, H23
1110kResistor_SMD:R_0805_2012MetricR4, R7, R8, R9, R13, R14, R17, R18, R21, R22, R23
1110uCapacitor_SMD:C_0805_2012MetricC8, C9, C10, C11, C12, C13, C14, C15, C16, C17, C24
101uCapacitor_SMD:C_0805_2012MetricC1, C6, C19, C20, C26, C27, C28, C29, C30, C31
627kResistor_SMD:R_0805_2012MetricR15, R16, R19, R20, R24, R25
6MountingHole_M2MountingHole:MountingHole_3.2mm_M3_DIN965_Pad_TopOnlyH1, H3, H5, H6, H24, H25
6SW_Pushuser:SW_B3F-4050_OMRSW2, SW3, SW4, SW5, SW6, SW7
50u1Capacitor_SMD:C_0805_2012MetricC3, C4, C23, C25, C32
410u_25vCapacitor_Tantalum_SMD:CP_EIA-3528-21_Kemet-BC2, C5, C21, C22
4redLED_SMD:LED_0805_2012MetricD1, D6, D7, D8
3DMG2307Package_TO_SOT_SMD:SOT-23Q1, Q2, Q3
220pCapacitor_SMD:C_0805_2012MetricC33, C34
227VDiode_SMD:D_SOD-123D4, D5
22A 60VDiode_SMD:D_SOD-123D2, D3
2660rResistor_SMD:R_0805_2012MetricR1, R12
2TPD8S009DSMRuser:IC_TPD8S009DSMRU5, U6
1100uCapacitor_Tantalum_SMD:CP_EIA-3528-21_Kemet-BC18
110rResistor_SMD:R_0805_2012MetricR2
112k 1%Resistor_SMD:R_0805_2012MetricR3
116MhzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1
11kResistor_SMD:R_0805_2012MetricR11
11n2Capacitor_SMD:C_0805_2012MetricC7
120k 1%Resistor_SMD:R_0805_2012MetricR5
12k2 1%Resistor_SMD:R_0805_2012MetricR6
12k7Resistor_SMD:R_0805_2012MetricR10
13h3Inductor_SMD:L_Bourns_SRN6045TAL1
14k7Resistor_SMD:R_0805_2012MetricR26
1AP64501SP-13user:SOIC127P600X170-9NU2
1BD33FC0FPPackage_TO_SOT_SMD:TO-252-2U3
1CANbususer:DT13-4PJ4
1CM4102008user:MODULE_CM4102008U1
1EMIF06-MSD02N16user:EMIF06MSD02N16U4
1FFC2B28-40-Guser:GCT_FFC2B28-40-GJ2
1MCP2515-xSTPackage_SO:TSSOP-20_4.4x6.5mm_P0.65mmU8
1Micro_SD_Card_Det1Connector_Card:microSD_HC_Hirose_DM3AT-SF-PEJM5J1
1NUP2105LPackage_TO_SOT_SMD:SOT-23D9
1NetTie_2user:NetTie-2_SMD_Pad0.2mmNT1
1SN65HVD231Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU9
1TPD2EUSB30Package_TO_SOT_SMD:Texas_DRT-3U7
1TP_12VTestPoint:TestPoint_Pad_D1.0mmTP3
1TP_3v3TestPoint:TestPoint_Pad_D1.0mmTP1
1TP_5VTestPoint:TestPoint_Pad_D1.0mmTP2
1TP_GNDTestPoint:TestPoint_Pad_D1.0mmTP4
1USB_C_Receptacle_USB2.0_14PConnector_USB:USB_C_Receptacle_GCT_USB4115-03-CJ3
1nBootButton_Switch_SMD:SW_DIP_SPSTx01_Slide_6.7x4.1mm_W8.61mm_P2.54mm_LowProfileSW1
1p18_jmpJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP1

Similar boards

  • 2 layers67.1 × 46 mmInterposer, the printed circuit board in 3D

    Interposer

    nherbaut/pico-power-sensor

    This board sockets a Pico 2 W, provides five programmable green LEDs and a microSD slot, and connects to the INA229EVM through a left-edge right-angle socket.

    35 parts
  • 4 layers154 × 81 mmSystem candidate, the printed circuit board in 3D

    System candidate

    bernardopg/ps28-modern-amp

    Infinity Primus PS28 amplifier modernization: TPA3255 engineering, validation and safety-gated workflow

    269 parts1
  • 4 layersProtopico, the printed circuit board in 3D

    Protopico

    MyloWhylo/ProtogenPCBs

    Repository for ProtoPico and BackpackController

    81 partsMIT
  • 2 layers90 × 121.7 mmMicromouse, the printed circuit board in 3D

    Micromouse

    UBIEEE/micromouse_pcb_team_2023

    70 partsMIT
  • 8 layers120 × 65.6 mmPrism, the printed circuit board in 3D

    Prism

    Y10-Labs/Prism-PCB

    Repo for PCB design from Prism

    229 parts
  • 2 layers20 × 40 mmFramework laptop converter, the printed circuit board in 3D

    Framework laptop converter

    imnotjames/framework-laptop-projects

    The framework laptop uses the I-PEX Cabline-UM 20879-040E-01 for interacting with the eDP port - and I want to use it for things other than the framework laptop display kit.

    7 parts1MIT
  • 4 layers394 × 110 mmGpu cluster backplane, the printed circuit board in 3D

    Gpu cluster backplane

    antmicro/gpu-cluster-backplane

    This project contains open hardware design files for a PCB supporting power distribution in a cluster composed of GPUs. This board has been derived from an open source d1600e-psu-breakout created by Antmicro.

    616 parts4Apache-2.0

Questions

How big is the Py dash pcb 7 PCB?

It measures 203.8 × 115.3 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Py dash pcb 7 use?

120 parts, built around the SN65HVD231D, TPD8S009DSMR, NCV1117DT33T5G and EMIF06-MSD02N16. 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 Py dash pcb 7 KiCad files?

From the JungleGim/PyDash_PCB repository on GitHub, at the commit this page was made from: the board is PCB_files/py_dash_pcb_7.kicad_pcb and its schematic PCB_files/ext_cons.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Py dash pcb 7 design in my own project?

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