Skip to the content
6 layers75 × 135.2 mmDumpling Main, the printed circuit board in 3D

Modular payload for high-speed logging and benchmarking of COTS sensors, enabling real-world performance data and open sharing.

Size
75 × 135.2 mm
Copper layers
6
Thickness
1.6 mm
Parts
370
Nets
622
Pads
1,919
Tracks, vias
4,807, 732
Pours
36
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
28 Nov 2024
Updated
29 Jul 2026

Overview

Dumpling Main is an open-source printed circuit board by nyuad-space, from the nyuad-space/dumpling repository on GitHub. It is a 6-layer board of 75 × 135.2 mm with 370 parts on 622 nets, routed with 4,807 tracks and 732 vias.

It is built around the W25Q128JVSIQ, USBLC6-2SC6 and TPS562200DDC, with the MPU-6050, WS2812B-2020 and AO3401A among its other parts. Its parts include 107 capacitors, 84 resistors, 31 ICs, 23 connectors and 18 diodes. It belongs with the sensors and measurement boards and the STM32 boards of this library.

Main components

9

README

README.md

Hardware Errata v1 (2025)

  • Pull down Boot1 instead of floating. For booting F405 with DFU, hold down the 3rd reset button.
  • SWD TagConnect: Layout is too close to XT30 or M.2 sockets and connector is difficult to source.
  • DRC check (recheck unconnected items).
  • Look out for "x"ed POS in the BOM file. May have been accidentally toggled off.
  • Reset button is too small & hard to reach
  • Vertical USB is less stress-tolerant (pulls on solder)
  • STM32F411 DFU bootloading error
  • Check forward current rating for Schottky diodes.
  • Consider using more current sensors i.e. Measure current draw from each board, from VIN total etc.
  • Add in extra LEDs, buttons, etc. for extra functions/debugging in the future
  • Unless saving space is a priority, consider using 0603 instead of 0402 for easier potential fixes
  • Misc. Consider a more impact-tolerant casing to protect board upon landing

Data Dumpling

Data Dumpling is a modular, high-speed data logger for MEMS sensors, designed as a payload for our experimental sounding rocket Stage Fright (2025). It enables real-time characterization and benchmarking of commercial sensors in demanding flight environments. The project aims to support sensor research and promote scalable, plug-and-play architectures for future space missions.


Features

  • Modular Architecture: Hot-swappable M.2 sensor ports with dedicated coprocessors
  • Sensor Compatibility: Supports I2C/SPI sensors with auto-detection via WHO_AM_I or equivalent registers
  • Dedicated Flash Memory: Each sensor board logs to onboard 16MB non-volatile memory
  • Universal Firmware: One firmware for all sensor types—detects, initializes, logs, and stores automatically
  • Flight-Triggered Logging: Dual-buffered flash logging triggered by flight detection events
  • Core MCU: STM32F405 manages flight readiness and triggers; STM32F411 handles individual sensor boards
  • Post-Flight Retrieval: Optionally offloads sensor data to SD card after recovery

Applications

  • Benchmarking MEMS sensors in realistic aerospace environments
  • Development of sensor fusion algorithms and accurate sensor models
  • Modular data collection for experimental payloads
  • Plug-and-play architecture for custom flight computers and high-speed telemetry systems

Mainboard Components

TypeComponents
Main MCUSTM32F405RGT
CoprocessorSTM32F411CEU6
IMUsLSM6DSO32, BMI088
BarometersDPS310XTSA1, BMP390L
MagnetometerLIS2MDLTR
TemperatureHDC3022DEJR
Flash16MB SPI NOR Flash per sensor board
RecoverySD card slot for post-flight data offload

Firmware Overview

Each STM32 microcontroller is programmed via built-in USB DFU bootloader.

Main processor

  • Communicates with MPU6050 to determine upright position
  • Triggers flight monitoring upon launch detection
  • Manages three flash files:
    • Circular Buffer: Logs during flight-ready state with overwrite on overflow
    • Main Buffer: Logs during flight, no wrap-around
    • Status File: Logs sensor configuration, buffer states, memory info, etc.

Coprocessor

Each sensor board follows this universal sequence:

  1. Detect sensor using WHO_AM_I (or equivalent)
  2. Initialize I2C or SPI communication
  3. Configure sensor parameters (range, ODR, oversampling, filters)
  4. Initialize filesystem and create sensor-specific files
  5. Log sensor data at configured rate to flash memory

Future Improvements

  • Integrate RTOS for multitasking, task prioritization, and modular firmware structure
  • Add wireless/CAN telemetry
  • Increase flash capacity and add compression
  • Expand to include GNSS, radiation, and vibration sensors
  • Enable real-time in-flight filtering and basic analytics
  • Use UART for master-slave communication in Arduino framework (SPI doesn't support it by default)
  • Ensure unique flash IDs and file headers per sensor for proper data parsing

Notes

  • Designed for SRAD rocketry — ensure proper mechanical and EMI shielding
  • Verify sensor electrical compatibility before connecting new boards
  • Maintain synchronized firmware versions across all sensor modules
  • Follow proper ESD precautions during handling and flashing

Disclaimer

Use the files, hardware, and software in this repository at your own risk.
We assume no liability for hardware damage, software malfunction, or unexpected behavior, particularly during live flight testing.
Always validate your configuration through extensive ground testing.


Parts

370
QtyValueFootprintReferences
52100nCapacitor_SMD:C_0402_1005MetricC1, C10, C13, C14, C19, C20, C22, C24, C28, C29, C33, C37, C100, C101, C103, C104 +36
2910kResistor_SMD:R_0402_1005MetricR2, R4, R10, R12, R14, R15, R17, R21, R31, R32, R33, R34, R35, R40, R41, R45 +13
184.7kResistor_SMD:R_0402_1005MetricR22, R23, R24, R25, R29, R30, R42, R43, R51, R52, R60, R61, R69, R70, R78, R79 +2
165.1kResistor_SMD:R_0402_1005MetricR6, R7, R18, R19, R38, R39, R47, R48, R56, R57, R65, R66, R74, R75, R82, R83
1410pCapacitor_SMD:C_0402_1005MetricC11, C12, C16, C27, C30, C44, C54, C57, C67, C70, C80, C83, C93, C96
1415pCapacitor_SMD:C_0402_1005MetricC3, C4, C17, C18, C23, C25, C55, C56, C68, C69, C81, C82, C94, C95
92.2kResistor_SMD:R_0603_1608MetricR3, R11, R20, R36, R37, R46, R55, R64, R73
9LEDLED_SMD:LED_0603_1608MetricD1, D2, D4, D6, D9, D11, D13, D15, D17
82.2uCapacitor_SMD:C_0603_1608MetricC15, C26, C35, C36, C53, C66, C79, C92
725MHzCrystal:Crystal_SMD_Abracon_ABM8G-4Pin_3.2x2.5mmHSE1, HSE2, HSE3, HSE4, HSE5, HSE6, HSE7
732.768kHzCrystal:Crystal_SMD_3215-2Pin_3.2x1.5mmY1, Y2, Y3, Y4, Y5, Y6, Y7
7Conn_ARM_SWD_TagConnect_TC2030-NLConnector:Tag-Connect_TC2030-IDC-NL_2x03_P1.27mm_VerticalJ1, J6, J9, J12, J15, J18, J21
7LOGOLOGOG***, G***, G***, G***, G***, G***, G***
7SW_SPDTJS102011JCQN:SW_JS102011JCQNSW1, SW4, SW6, SW8, SW10, SW12, SW14
7SW_SPSTButton_Switch_SMD:SW_SPST_B3U-1000PSW2, SW3, SW5, SW7, SW9, SW11, SW13
7USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U2, U6, U11, U14, U17, U20, U23
7W25Q128JVSPackage_SO:SOIC-8_5.3x5.3mm_P1.27mmU3, U8, U10, U12, U15, U18, U24
7WS2812B-2020LED_SMD:LED_WS2812B-2020_PLCC4_2.0x2.0mmD7, D8, D10, D12, D14, D16, D18
61uCapacitor_SMD:C_0603_1608MetricC21, C50, C63, C76, C89, C102
6600Inductor_SMD:L_0402_1005MetricFB2, FB3, FB4, FB5, FB6, FB7
6620Resistor_SMD:R_0402_1005MetricR13, R26, R44, R53, R62, R71
6MICROMOD-2222-Cmdot2:TE_2199119-4J7, J10, J13, J16, J19, J22
6SMTSOM2_525STRSMTSOM2.525STR:SMD_BD5.6-D4.1U21, U27, U28, U29, U30, U31
6STM32F411CEUxPackage_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mmU4, U5, U13, U16, U19, U22
6USB_C_Receptacle_USB2.0_16PConnector_USB:USB_C_Receptacle_G-Switch_GT-USB-7051xJ8, J11, J14, J17, J20, J23
510uCapacitor_SMD:C_0805_2012MetricC2, C31, C32, C39, C40
422uCapacitor_SMD:C_0805_2012MetricC34, C38, C42, C43
4MountingHoleMountingHole:MountingHole_3.2mm_M3_Pad_ViaH1, H2, H3, H4
4SPI1TestPoint:TestPoint_Pad_D1.0mmTP5, TP6, TP7, TP8
4flsh1TestPoint:TestPoint_Pad_D1.0mmTP19, TP24, TP28, TP32
4flsh2TestPoint:TestPoint_Pad_D1.0mmTP25, TP29, TP33, TP35
4flsh3TestPoint:TestPoint_Pad_D1.0mmTP14, TP15, TP16, TP17
4flsh4TestPoint:TestPoint_Pad_D1.0mmTP23, TP26, TP27, TP34
4flsh5TestPoint:TestPoint_Pad_D1.0mmTP40, TP41, TP42, TP43
4flsh6TestPoint:TestPoint_Pad_D1.0mmTP47, TP48, TP49, TP50
3SPI2TestPoint:TestPoint_Pad_D1.0mmTP9, TP10, TP11
3TestPointTestPoint:TestPoint_Pad_D1.5mmVBAT1, VBUS1, VIN1
20.22uCapacitor_SMD:C_0402_1005MetricC106, C107
2D_SchottkyDiode_SMD:D_SOD-323D3, D5
2I2C1TestPoint:TestPoint_Pad_D1.0mmTP1, TP2
2I2C2TestPoint:TestPoint_Pad_D1.0mmTP3, TP4
2RF1TestPoint:TestPoint_Pad_D1.0mmTP30, TP31
2RF2TestPoint:TestPoint_Pad_D1.0mmTP36, TP90
2RF3TestPoint:TestPoint_Pad_D1.0mmTP18, TP21
2RF4TestPoint:TestPoint_Pad_D1.0mmTP37, TP38
2RF5TestPoint:TestPoint_Pad_D1.0mmTP44, TP45
2RF6TestPoint:TestPoint_Pad_D1.0mmTP51, TP52
2TPS562200Package_TO_SOT_SMD:SOT-23-6_HandsolderingU25, U26
10.01Resistor_SMD:R_2512_6332MetricR28
1100kResistor_SMD:R_0603_1608MetricR8
110nCapacitor_SMD:C_0402_1005MetricC105
11kResistor_SMD:R_0402_1005MetricR9
11uCapacitor_SMD:C_0402_1005MetricC6
13.3uInductor_SMD:L_Changjiang_FNR4030SL2
133.2kResistor_SMD:R_0402_1005MetricR16
14.7uInductor_SMD:L_Changjiang_FXL0420L3
154.9kResistor_SMD:R_0402_1005MetricR27
1600Inductor_SMD:L_0603_1608MetricFB1
1620Capacitor_SMD:C_0402_1005MetricR1
1AO3401APackage_TO_SOT_SMD:SOT-23Q1
1BuzzerFST-5030:BUZ-SMD_FST-5030BZ1
1CS1TestPoint:TestPoint_Pad_D1.0mmTP12
1CS2TestPoint:TestPoint_Pad_D1.0mmTP20
1CS3TestPoint:TestPoint_Pad_D1.0mmTP13
1CS4TestPoint:TestPoint_Pad_D1.0mmTP22
1CS5TestPoint:TestPoint_Pad_D1.0mmTP39
1CS6TestPoint:TestPoint_Pad_D1.0mmTP46
1INA219AxDCNPackage_TO_SOT_SMD:SOT-23-8U9
1MPU-6050Sensor_Motion:InvenSense_QFN-24_4x4mm_P0.5mmU7
1Micro_SD_CardConnector_Card:microSD_HC_Molex_47219-2001J2
1S8050Package_TO_SOT_SMD:SOT-23Q2
1SM04B-SRSS-TBConnector_JST:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_HorizontalJ5
1STM32F405RGTxPackage_QFP:LQFP-64_10x10mm_P0.5mmU1
1USB_C_Receptacle_USB2.0_16PConnector_USB:USB_C_Receptacle_G-Switch_GT-USB-7010ASVJ3
1XT30PW-MConnector_AMASS:AMASS_XT30PW-M_1x02_P2.50mm_HorizontalJ4

More from nyuad-space/dumpling

4
  • 2 layers22 × 22 mm02 03 IMU BMI088 SPI, the printed circuit board in 3D

    02 03 IMU BMI088 SPI

    nyuad-space/dumpling

    Modular payload for high-speed logging and benchmarking of COTS sensors, enabling real-world performance data and open sharing.

    17 parts1
  • 2 layers22 × 22 mm02 06 temphumid HDC3022DEJR I2C, the printed circuit board in 3D

    02 06 temphumid HDC3022DEJR I2C

    nyuad-space/dumpling

    Modular payload for high-speed logging and benchmarking of COTS sensors, enabling real-world performance data and open sharing.

    17 parts1
  • 2 layers22 × 22 mm02 01 IMU LSM6DSO32 SPI, the printed circuit board in 3D

    02 01 IMU LSM6DSO32 SPI

    nyuad-space/dumpling

    Modular payload for high-speed logging and benchmarking of COTS sensors, enabling real-world performance data and open sharing.

    16 parts1
  • 2 layers22 × 22 mm02 05 magnetometer LIS2MDLTR I2C, the printed circuit board in 3D

    02 05 magnetometer LIS2MDLTR I2C

    nyuad-space/dumpling

    Modular payload for high-speed logging and benchmarking of COTS sensors, enabling real-world performance data and open sharing.

    16 parts1

Similar boards

  • 6 layers100 × 60 mmAether, the printed circuit board in 3D

    Aether

    nasheed-x/aether

    Aether is a versatile flight computer for testing flight hardware and software, focusing on sensor fusion to monitor rocket states and interface with on-board systems.

    180 parts10
  • 4 layers50 × 70 mmStm32-portable data logger, the printed circuit board in 3D

    Stm32-portable data logger

    copperheadhq/copperhead-stm32-data-logger

    Portable STM32L433 data logger, 50 × 70 mm, four layers, microSD, USB-C LiPo charging. Designed with copperhead. Never built: do not order expecting it to work.

    90 parts3
  • 4 layers50 × 100 mmCRVFCU, the printed circuit board in 3D

    CRVFCU

    Kev1n8088/CRVFCU

    161 parts
  • 6 layers90 × 60 mmEvidence, the printed circuit board in 3D

    Evidence

    kabidey/someda-claude-plugin

    This plugin puts the someda engine behind three slash commands. In a conversation, Claude writes the circuit as a small JSON plan: real parts with datasheet pinouts, nets, and intent such as "USB-C on the top edge".

    132 partsMIT
  • 2 layers61.4 × 74.1 mmRobot Trash Collector V1.0, the printed circuit board in 3D

    Robot Trash Collector V1.0

    Lukikato101/AMR_Robot-Trash-Collector-Simple-PCB

    Autonomous trash collector robot simulation with AI object detection and monitoring dashboard.

    45 parts
  • 4 layers71.8 × 40.1 mmRoomba, the printed circuit board in 3D

    Roomba

    trhussain/trhussain.github.io

    65 parts1
  • 2 layers33.5 × 0.7 mmBigSpin, the printed circuit board in 3D

    BigSpin

    trhussain/bigSpin

    PCB for vertical spinner robot

    47 parts
  • 2 layers53.1 × 100.5 mmJammer, the printed circuit board in 3D

    Jammer

    aryakaithal8/Jammer

    A jamming device which jam everything

    94 parts

Questions

How big is the Dumpling Main PCB?

It measures 75 × 135.2 mm and has 6 copper layers, 1.6 mm thick.

What parts does the Dumpling Main use?

370 parts, built around the W25Q128JVSIQ, USBLC6-2SC6, TPS562200DDC and MPU-6050. 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 Dumpling Main KiCad files?

From the nyuad-space/dumpling repository on GitHub, at the commit this page was made from: the board is 01_main-board/Dumpling_Main.kicad_pcb and its schematic 01_main-board/Dumpling_Main.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Dumpling Main design in my own project?

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