Skip to the content
2 layers50 × 120 mmCDB, the printed circuit board in 3D

[Telemetry] Legacy avionics project for SR1500 rocket.

Size
50 × 120 mm
Copper layers
2
Thickness
1.6 mm
Parts
17
Nets
33
Pads
80
Tracks, vias
166, 0
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
4 Mar 2025
Updated
23 Oct 2025

Overview

CDB is an open-source printed circuit board by Serra-Rocketry, from the Serra-Rocketry/old-cdb repository on GitHub. It is a 2-layer board of 50 × 120 mm with 17 parts on 33 nets, routed with 166 tracks and 0 vias.

It is built around the ESP32-C3, BMP280 and RFM95W, with the BC547 among its other parts. Its parts include 5 capacitors, 5 ICs, 3 connectors, 1 resistor and 1 diode. It belongs with the ESP32 and RISC-V boards of this library.

Main components

4

README

README.md

Aviônica - Computador de Bordo

Este projeto é o computador de bordo (CDB) para o foguete SR1500 da equipe de foguetemodelismo Serra Rocketry. O CDB utiliza sensores e módulos para monitorar a altitude, localização GPS, e controlar a abertura do paraquedas para garantir um voo seguro.

Funcionalidades

  • Leitura de altitude utilizando o sensor BMP280.
  • Monitoramento de localização GPS com o módulo GPS NEO-6m.
  • Comunicação via LoRa para transmissão de dados com a base operacional.
  • Controle de um servo motor para abertura do paraquedas.
  • Armazenamento de dados em LittleFS.
  • Monitoramento de aceleração e giroscópio utilizando o sensor MPU6050.
  • Registro de dados em formato CSV para análise posterior.
  • Sinalização com buzzer para indicar status de operação.

Hardware Utilizado

  • ESP32
  • Sensor de pressão BMP280
  • Módulo GPS NEO-6m
  • Módulo LoRa
  • Servo motor
  • Buzzer
  • LED
  • Step down
  • Baterias 18650
  • Sensor MPU6050

Configuração de Pinos

  • BUZZER_PIN: 0
  • SERVO_PIN: 13
  • RX_GPS: 20
  • TX_GPS: 21
  • SS_LORA: 7
  • RST_LORA: 1
  • DIO0_LORA: 2

Bibliotecas Utilizadas

  • Wire
  • SPI
  • Adafruit_BMP280
  • ESP32Servo
  • TinyGPS++
  • FS
  • LittleFS
  • LoRa
  • Adafruit_MPU6050
  • Adafruit_Sensor

Estrutura do Código

  • setup(): Configura os sensores, módulos e inicializa as variáveis.
  • loop(): Realiza leituras periódicas dos sensores, verifica a altitude e controla a abertura do paraquedas.
  • setupLittleFS(): Inicializa o sistema de arquivos LittleFS.
  • setupBMP(): Configura o sensor BMP280.
  • setupLoRa(): Inicializa o módulo LoRa.
  • setupMPU(): Configura o sensor MPU6050.
  • setupServo(): Configura o servo motor.
  • buzzSignal(): Controla o buzzer para sinalização.
  • logData(): Registra e imprime os dados do momento.
  • handleParachute(): Controla a abertura do paraquedas com base na altitude.
  • checkHighest(): Verifica a maior altitude alcançada.
  • writeFile(): Escreve dados no arquivo LittleFS.
  • appendFile(): Anexa dados ao arquivo LittleFS.
  • printBoth(): Imprime mensagens no Serial e envia via LoRa.
  • sendLoRa(): Envia mensagens via LoRa.
  • GPSData(): Obtém dados do GPS (latitude, longitude, satélites, altitude, data e hora).
  • BMPData(): Obtém dados do sensor BMP280 (altitude e pressão).
  • MPUData(): Obtém dados do sensor MPU6050 (aceleração e giroscópio).
  • getDataString(): Concatena os dados do GPS, BMP280, MPU6050 e status do paraquedas em uma string.

Códigos de Apoio

Os códigos contidos em /extras são apoios ao desenvolvimento. Esses códigos são funcionais e testados. Os códigos contidos em /testsão apoios ao desenvolvimento, como etapas para construção do código final.

Parts

17
QtyValueFootprintReferences
4100nFCapacitor_THT:C_Disc_D4.7mm_W2.5mm_P5.00mmC1, C2, C3, C4
110uFPCM_Capacitor_THT_AKL:CP_Radial_D4.0mm_P2.00mmC7
11N4007PCM_Diode_THT_AKL:D_DO-41_SOD81_P7.62mm_HorizontalD1
11kResistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_HorizontalR1
1Antena LoRaConnector_Coaxial:SMA_Amphenol_901-144_VerticalJ3
1BC547Package_TO_SOT_THT:TO-92_InlineQ1
1BMP280Library:GY-BMP280U4
1BateriaConnector:FanPinHeader_1x03_P2.54mm_VerticalJ2
1BuzzerBuzzer_Beeper:Buzzer_12x9.5RM7.6BZ2
1ESP32-C3ESP32-C3_SUPERMINI_TH:MODULE_ESP32-C3_SUPERMINIU1
1GPSLibrary:GY-NEO6M-V2U3
1GY-521Library:GY-521U5
1RFM95WRF_Module:HOPERF_RFM9XW_THTU2
1Servo MotorConnector:FanPinHeader_1x03_P2.54mm_VerticalJ1

Similar boards

  • 2 layers70 × 70 mmStm32, the printed circuit board in 3D

    Stm32

    AtharvaGupta018/my-drone-pcb-

    I have recently created a drone quadcopter pcb, with no ERC and DRC errors .

    65 parts
  • 2 layers85.1 × 65.4 mmTx module, the printed circuit board in 3D

    Tx module

    koushik12328/Smart_mining_helmet

    An ESP32-powered safety helmet featuring gas detection, impact sensing, and IoT connectivity

    27 partsMIT
  • 2 layers23.9 × 26 mmRfm9x breakout board, the printed circuit board in 3D

    Rfm9x breakout board

    attexx/rfm9x_breakout_board

    RFM9x Breakout Board

    10 parts30
  • 2 layers116 × 40 mmBriefkastensensor, the printed circuit board in 3D

    Briefkastensensor

    hierle/letterbox-sensor

    LoRaWan letterbox sensor

    14 parts17GPL-3.0
  • 2 layers97.2 × 55.9 mmMjs pcb, the printed circuit board in 3D

    Mjs pcb

    meetjestad/mjs_pcb

    This repository contains various versions of the sensor station PCB used by Meetjestad.

    83 parts6
  • 4 layers61 × 46 mmTracking device, the printed circuit board in 3D

    Tracking device

    villetiukuvaara/SpyThing-Hardware

    128 parts4GPL-3.0
  • 2 layers167.9 × 105.9 mmIgnition, the printed circuit board in 3D

    Ignition

    cuspaceflight/OkGo

    Rocket motor ignition and valve control from far, far away

    112 parts3
  • 2 layers157.4 × 59 mmAvionicsBoard, the printed circuit board in 3D

    AvionicsBoard

    djmallek/CycloneRocketry

    Some work I do for CycloneRocketry

    85 parts1

Questions

How big is the CDB PCB?

It measures 50 × 120 mm and has 2 copper layers, 1.6 mm thick.

What parts does the CDB use?

17 parts, built around the ESP32-C3, BMP280, RFM95W and BC547. 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 CDB KiCad files?

From the Serra-Rocketry/old-cdb repository on GitHub, at the commit this page was made from: the board is hardware/CDB/CDB.kicad_pcb and its schematic hardware/CDB/CDB.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the CDB design in my own project?

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