Skip to the content
2 layers75.6 × 59.8 mmEDL Project, the printed circuit board in 3D

Shock events can cause significant damage to equipment, goods, and infrastructure, leading to financial losses and safety and system integrity concerns.

Size
75.6 × 59.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
126
Nets
159
Pads
491
Tracks, vias
895, 306
Pours
14
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
17 Nov 2025
Updated
17 Nov 2025

Overview

EDL Project is an open-source printed circuit board by Consultant-47, from the Consultant-47/ShockSense repository on GitHub. It is a 2-layer board of 75.6 × 59.8 mm with 126 parts on 159 nets, routed with 895 tracks and 306 vias.

It is built around the BGM113A256V2, LSM6DSV16BX and USBLC6-2SC6. Its parts include 33 capacitors, 20 resistors, 14 connectors, 7 ICs and 7 diodes. It belongs with the STM32 boards of this library.

Main components

3

README

README.md

Review Assignment Due Date

Docs Added

alt text

Project Name: P-34 MEMS inertial sensor applications

Team Number: MON-05

Team Members:

Team MemberRoll Number
Raghav Sapre22B1241
Samar Perwez22B3913
Tanay Bhat22B3303
Devavrat Patni22B3969
Shreyash Wanjari22B3926

Problem Statement and Solution:

Problem Statement:

Shock events can cause significant damage to equipment, goods, and infrastructure, leading to financial losses and safety and system integrity concerns. There is a need for a compact, reliable, and affordable system that can accurately detect and analyze shock events in real-time across various domains, including transportation, industrial machinery, and consumer electronics.

The project aims to develop a MEMS-based inertial sensor system that can detect and analyze shock events. The system will utilize a MEMS accelerometer to measure acceleration and a 6-DOF IMU to measure orientation data, a microcontroller to process the data and a bluetooth module to convey this information, wirelessly, in a concise format.

Solution:

The proposed system is designed to detect and analyze shock events in real-time using a combination of hardware and software components. Below is a detailed breakdown of the solution:

  1. Hardware Components:
    • MEMS Accelerometer: A high-precision MEMS accelerometer will measure acceleration in three axes (X, Y, Z). This data will help identify sudden changes in motion indicative of shock events.
    • 6-DOF IMU (Inertial Measurement Unit): The IMU will provide orientation data, including angular velocity and linear acceleration, enabling a comprehensive analysis of the shock event's effects on the orientation of the product.
    • Microcontroller: A low-power microcontroller, STM32L552VET6Q will process the raw data from the sensors and store it for analysis. It will also store the summary of the shock events in its flash memory for instantaneous access.
    • Bluetooth Module: A Bluetooth module, HC-05, will wirelessly transmit the processed data to a paired device, such as a smartphone for further analysis or visualization.
    • Power Supply: The system will be powered by a rechargeable lithium-ion battery, ensuring portability and ease of use. The battery can be charged using an onboard charging circuit.
    • Storage: The system will include a microSD card module for additional data storage, allowing for long-term data logging and analysis. The microcontroller will interface with the microSD card to read and write data as needed.

Hardware Connections:

text
┌────────────────┐      SPI      ┌─────────────┐
│  Accelerometer ├──────────────►│             │
└────────────────┘               │             │
                                 │             │
┌────────────────┐      SPI      │             │
│      IMU       ├──────────────►│    STM32    │      UART      ┌────────────┐
└────────────────┘               │     MCU     ├───────────────►│  Bluetooth │
                                 │             │                │   Module   │
┌────────────────┐      SPI      │             │                └────────────┘
│    MicroSD     ├──────────────►│             │
└────────────────┘               └─────────────┘
                                       ▲
┌────────────────┐                     │
│ Li-ion Battery ├─────────────────────┘
└────────────────┘       Power
  1. Software Components:
    • Sensor Data Acquisition: The microcontroller will interface with the MEMS accelerometer and IMU using SPI to collect real-time data.
    • Shock Detection: Interrupts on the IMUs detect shock events which involve threshold-based detection to toggle between sleep state and active state for power optimization.
    • Data Packaging and Transmission: The processed data will be formatted into a concise packet and transmitted via Bluetooth whenever the package is queried.
    • Data Visualization: A mobile application will be developed to visualize the data received from the microcontroller. The app will display real-time graphs of acceleration and orientation data, allowing users to analyze shock events easily.
    • Data Logging: The system will log data to the microSD card for long-term storage and analysis. The data can be retrieved later for further analysis or reporting.
    • Data Analysis: A Python script was developed to analyze the logged data, providing insights into the magnitude and duration of shock events.

Repository Structure

text
root/
├── 3d_models/                                    # Contains CAD models
    ├── Component_1/                                    # Files for CAD of outer casing
    ├── Component_2/                                    # Files for CAD of top half of inner casing
    ├── Component_3/                                    # Files for CAD of bottom half of inner casing
    └── README.md
├── others/                                       # Microcontroller firmware
    ├── Exploded View of the Assembly.png               # Contains the exploded view of the assembly
    ├── Assembled PCB.png                               # Contains the front and back view of the assembled PCB
    ├── PCB_Connection.png                              # Contains the connection diagram of the PCB
    ├── README.md                                       # Documentation for others/
    └── User Manual.pdf                                 # Contains the user manual for the PCB
├── pcb/PCB1/                                     # Schematic and layout files
    ├── design_files/                                   # Contains the schematic and layout files
    ├── footprints/                                     # Contains the custom footprint libraries created for this PCB
    ├── gerber_files/                                   # Contains the gerber files of the PCB layout
    ├── images/                                         # Contains images of the PCB layout and printed PCB
    ├── step_files/                                     # Contains the custom 3D models created for this PCB
    ├── symbols/                                        # Contains the custom symbols created for this product
    └── README.md                                       # Documentation for PCB1
├── reports/                                      # Milestone reports
    ├── Milestone_0.pdf
    ├── Milestone_1.pdf
    ├── Milestone_2.pdf
  1. Future Enhancements:
    • Detailed Analysis: The system can be enhanced to include advanced algorithms for shock event classification, such as machine learning techniques to identify specific types of shocks or impacts.
    • User Feedback Integration: Implementing a feedback mechanism to gather user experiences and improve the system based on real-world usage.
    • Real-time Monitoring: Incorporating real-time monitoring features to provide immediate alerts and notifications during shock events.

This solution combines compact hardware, efficient algorithms, and wireless communication to deliver a reliable and affordable shock detection system suitable for various domains.

Project Experience

✅ Positive Takeaways

  • End-to-End System Design: This project gave us practical experience building a complete embedded system—from sensor interfacing and PCB design to data processing and wireless communication. We learned how to integrate and coordinate multiple hardware and software components to achieve a real-time shock detection solution.

  • Sensor Interfacing and Data Handling: Interfacing the MEMS accelerometer and 6-DOF IMU over SPI and handling data processing on the STM32L552VET6Q microcontroller helped us gain a deeper understanding of embedded communication protocols, interrupt-driven programming, and power optimization techniques.

  • Cross-Platform Development: Developing a Bluetooth-based mobile application alongside microcontroller firmware and Python-based data analysis scripts introduced us to multi-platform integration and emphasized the importance of consistent data formatting and transmission protocols.

  • Collaboration and Documentation: Working in a team of five, we coordinated tasks across hardware, firmware, software, and documentation. Milestone reports, CAD and PCB designs, and structured repository organization helped streamline our workflow and made version control manageable.

  • Debugging and Testing: Real-world debugging of hardware-software interactions improved our troubleshooting skills. Each integration phase provided insights into performance bottlenecks, data inconsistencies, and how to systematically isolate issues.


⚠️ Challenges and Lessons Learnt

  • Firmware Complexity: Coordinating SPI communication with multiple peripherals, managing memory, and handling Bluetooth data transmission was a bit complex. There were some issues with the clock supply to different communication protocols which were fixed eventually.

  • Bluetooth Compatibility & Hardware Access: One of the major challenges we faced was the unavailability of the development board during critical stages of the project. This prevented us from flashing and testing the firmware on the actual hardware, which in turn delayed debugging and integration of Bluetooth functionality. As a result, we had to replace the original IC with a less efficient HC-05 module.

  • PCB Design Revisions: There were a few minor hiccups in the 1st iteration of the PCB. The BOOT0 pin was not pulled down to ground and the silkscreen was wrong in two places (these details are mentioned in the PCB README). This taught us the importance of performing thorough design rule checks (DRC) and functional reviews before fabrication. We also learned to cross-verify microcontroller pin configurations and documentation to catch critical issues early in the design cycle.

  • Time and Resource Management: Despite planning, some stages—especially integration and testing—took longer than expected. We learned the importance of scheduling buffer time for unexpected hardware or debugging delays.


Parts

126
QtyValueFootprintReferences
15SolderJumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP16, JP17, JP18, JP19, JP20, JP21, JP22, JP23, JP24, JP25, JP26, JP27, JP28, JP29, JP30
8100nFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC21, C22, C23, C24, C25, C26, C27, C31
8100nFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC1, C2, C3, C4, C5, C10, C16, C34
8~Jumper:SolderJumper-3_P1.3mm_Open_Pad0.75x1mmJP1, JP2, JP3, JP4, JP5, JP7, JP8, JP9
7221RResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR4, R5, R6, R15, R16, R17, R20
7LEDLED_SMD:LED_0805_2012MetricD1, D2, D3, D4, D5, D6, D7
7TestPointTestPoint:TestPoint_Pad_D1.0mmTP1, TP2, TP3, TP4, TP5, TP6, TP7
647kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR9, R10, R11, R12, R13, R14
4SolderJumper_3_OpenJumper:SolderJumper-3_P1.3mm_Open_Pad0.75x1mmJP10, JP11, JP12, JP13
31uFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC14, C15, C28
34u7FCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC6, C12, C13
3VDD SafetyJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP6, JP14, JP15
210nFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC7, C33
215pFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC19, C20
21uFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC8, C9
25k1Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR7, R8
28pFCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC17, C18
2SiA811ADJxxPackage_TO_SOT_SMD:Vishay_PowerPAK_SC70-6L_DualM1, M2
110kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR1
110uFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC29
147uFCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC30
14u7FCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC11
14u7HInductor_SMD:L_APV_ANR_WELL1
1800RResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR3
18kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR2
1>33kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR19
1ADXL1Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ7
1ADXL2Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ9
1ADXL3Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ10
1ADXL372xxAccelerometer:ADXL372U5
1BGM113A256V2Bluetooth Modules:BGM113A256V2U7
1BLE1Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ11
1BLE2Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ13
1BLE3Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ15
1Battery ConnConnector_JST:JST_EH_B2B-EH-A_1x02_P2.50mm_VerticalJ2
1CurrMeasureConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ8
1FBInductor_SMD:L_0805_2012Metric_Pad1.15x1.40mm_HandSolderFB1
1HSE 32MHzCrystal_Oscillators:YSX211SLY2
1LSE 32.768kHzCrystal_Oscillators:830016178Y1
1LSM1Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ6
1LSM2Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ5
1LSM6DSV16BXIMU:LSM6DSV16BX_ST_6DOF_TempU6
1MCP73833-xxx-UNPackage_SO:MSOP-10_3x3mm_P0.5mmU3
1MIC5317-3.3xM5Package_TO_SOT_SMD:SOT-23-5U4
1SD Card HeaderConnector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_VerticalJ4
1STM32L552VETxQPackage_QFP:LQFP-100_14x14mm_P0.5mmU8
1SW DebugConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ3
1SW_PushButton_Switch_THT:SW_PUSH_6mmSW2
1SW_SPDTButton_Switch_THT:SW_Lock_DPDT_KFC-5.8CSW1
1Therm ConnConnector_JST:JST_EH_B2B-EH-A_1x02_P2.50mm_VerticalJ12
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U2
1USB_C_Receptacle_USB2.0_16PConnector_USB:USB_C_Receptacle_GCT_USB4085J1
1approx 1kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR18

Similar boards

  • 4 layers32.9 × 20.8 mmCue devboard, the printed circuit board in 3D

    Cue devboard

    tanishasrinivasan/cue-sephacks

    A 33 × 21 mm, 4-layer board (signal / GND / 1V8 / signal) with the cuff circuits plus bench conveniences: USB-C charging, JST-PH battery and JST-SH motor connectors, SWD debug and back-side test pads (TP1–TP13) for…

    52 parts
  • 4 layers16.9 × 119.4 mmOrbit, the printed circuit board in 3D

    Orbit

    earthtojake/text-to-cad

    Design physical products with AI

    182 parts26kMIT
  • 2 layers290.1 × 130 mmPro V2, the printed circuit board in 3D

    Pro V2

    kata0510/Lily58

    6×4+4keys column-staggered split keyboard.

    312 parts2.3k
  • 4 layers95 × 55.5 mmEinkPDA keyboard, the printed circuit board in 3D

    EinkPDA keyboard

    TalismanDesign/PocketMage_PDA

    An E-Ink PDA device using the ESP32 S3.

    137 parts2kApache-2.0
  • 4 layers299 × 127 mmLaunch, the printed circuit board in 3D

    Launch

    system76/launch

    System76 Launch Configurable Keyboard

    385 parts1.4kGPL-3.0
  • 2 layers42 × 67 mmLalboard, the printed circuit board in 3D

    Lalboard

    JesusFreke/lalboard

    A 3D-printed keyboard inspired by the DataHand

    65 parts993
  • 2 layers134 × 88 mmTulipcc, the printed circuit board in 3D

    Tulipcc

    shorepine/tulipcc

    The Tulip Creative Computer and AMYboard - portable Python synthesizers

    103 parts978
  • 4 layers70.8 × 108 mmCastor and Pollux, the printed circuit board in 3D

    Castor and Pollux

    wntrblm/Castor_and_Pollux

    A Juno-inspired dual oscillator

    235 parts587

Questions

How big is the EDL Project PCB?

It measures 75.6 × 59.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the EDL Project use?

126 parts, built around the BGM113A256V2, LSM6DSV16BX and USBLC6-2SC6. 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 EDL Project KiCad files?

From the Consultant-47/ShockSense repository on GitHub, at the commit this page was made from: the board is pcb/PCB1/design_files/EDL Project.kicad_pcb and its schematic pcb/PCB1/design_files/EDL Project.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the EDL Project design in my own project?

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