All Projects → johnjones4 → white-vest

johnjones4 / white-vest

Licence: MIT license
White Vest is a project for collecting, logging, emitting, and visualizing telemetry from a model rocket containing an inboard Raspberry Pi Zero with an Arduino receiving telemetry.

Programming Languages

go
31211 projects - #10 most used programming language
python
139335 projects - #7 most used programming language
javascript
184084 projects - #8 most used programming language
CSS
56736 projects
HTML
75241 projects
C++
36643 projects - #6 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to white-vest

HPR-Rocket-Flight-Computer
A flight computer for high-powered rockets based on the Teensy platform. 4 programmable pyro outputs, Mach immune flight events, air-start & two-stage capable w/ tilt-sensing safety features, GPS & live telemetry. High-rate data logging at 1000 samples per second. 4.0in x 1.25in x 0.5in fits in a 38mm tube coupler.
Stars: ✭ 33 (+17.86%)
Mutual labels:  telemetry, rocketry
vscode-extension-telemetry
Node module to help VS Code extensions send telemetry using application insights
Stars: ✭ 89 (+217.86%)
Mutual labels:  telemetry
cpp client telemetry
1DS C++ SDK
Stars: ✭ 62 (+121.43%)
Mutual labels:  telemetry
yolov5 obb
yolov5 + csl_label.(Oriented Object Detection)(Rotation Detection)(Rotated BBox)基于yolov5的旋转目标检测
Stars: ✭ 1,105 (+3846.43%)
Mutual labels:  aerial-imagery
orthoimage software collection
orthoimage_software_collection
Stars: ✭ 38 (+35.71%)
Mutual labels:  aerial-imagery
Raspberry-Pi-Zero-Rubber-Ducky-Duckberry-Pi
A £10 Rubber Ducky USB HID! A USB device which emulates a keyboard and automates key entry.
Stars: ✭ 207 (+639.29%)
Mutual labels:  raspberry-pi-zero
ESP32
DroneBridge for ESP32. A short range wifi based telemetry link. Support for MAVLink, MSP & LTM (iNAV).
Stars: ✭ 183 (+553.57%)
Mutual labels:  telemetry
RPi-TELEBOT
Python based Telegram bot to monitor and control the raspberry pi
Stars: ✭ 19 (-32.14%)
Mutual labels:  raspberry-pi-zero
taar
Telemetry-Aware Addon Recommender
Stars: ✭ 23 (-17.86%)
Mutual labels:  telemetry
appinsights-rs
Application Insights SDK for Rust
Stars: ✭ 29 (+3.57%)
Mutual labels:  telemetry
ApplicationInsights-Ruby
Microsoft Application Insights SDK for Ruby
Stars: ✭ 30 (+7.14%)
Mutual labels:  telemetry
Coderr.Client
Core client library for Coderr
Stars: ✭ 23 (-17.86%)
Mutual labels:  telemetry
stanza
Fast and lightweight log transport and processing.
Stars: ✭ 142 (+407.14%)
Mutual labels:  telemetry
orb
Orb is a dynamic network observability platform
Stars: ✭ 437 (+1460.71%)
Mutual labels:  telemetry
micrometer-registry-newrelic
Micrometer registry implementation that sends data to New Relic as dimensional metrics.
Stars: ✭ 27 (-3.57%)
Mutual labels:  telemetry
pizero-webcam-tutorial
A step-by-step tutorial for setting up a Raspberry Pi Zero W computer as a webcam
Stars: ✭ 25 (-10.71%)
Mutual labels:  raspberry-pi-zero
Oculess
Removes account requirements and telemetry from Oculus Quest devices
Stars: ✭ 1,551 (+5439.29%)
Mutual labels:  telemetry
aerial wildlife detection
Tools for detecting wildlife in aerial images using active learning
Stars: ✭ 177 (+532.14%)
Mutual labels:  aerial-imagery
earthacrosstime
Twitter bot that posts videos showcasing how random locations in the world have changed since 1984.
Stars: ✭ 28 (+0%)
Mutual labels:  aerial-imagery
raspi ws2812
A kernel module able to run as many WS2812 strips as there are GPIO pins on Raspberry Pi Zero
Stars: ✭ 35 (+25%)
Mutual labels:  raspberry-pi-zero

Project Icon

White Vest:

White Vest Build

Telemetry

White Vest is a project for collecting, logging, emitting, and visualizing telemetry from a model rocket containing an inboard Raspberry Pi Zero with an Arduino receiving telemetry. To learn more about this project, visit my blog post documenting it. This project is named after the iconic white vest that flight director Gene Kranz wore during Apollo 13.

Hardware

This project requires a Raspberry Pi Zero for the inboard systems and an Arduino for ground telemetry reception.

Inboard

The inboard system records video and measures pressure, temperature, altitude, acceleration, and orientation. The total payload weight of the module, with 3D printed parts for mounting, weights about 115 grams, but your mileage may vary.

Ground

Wiring

Wiring Diagram

The air hardware is wired to the following Raspberry Pi pins:

  • PowerBoost 500 Basic:
    • 5v -> Pi 5V
    • Ground -> Pi Ground
  • BMP388 (I2C)
    • VIN -> Pi 3V
    • GND -> Pi GND
    • SCK -> Pi SCL
    • SDI -> Pi SDA
  • LSM303 (I2C)
    • VIN -> Pi 3V
    • GND -> Pi GND
    • SCL -> Pi SCL
    • SDA -> Pi SDA
  • Camera
    • Pi Camera ribbon connection
  • RFM95W (SPI)
    • VIN -> Pi 3V
    • GND -> Pi GND
    • SCK -> Pi SPI SCLK
    • MOSI -> Pi SPI MOSI
    • MISO -> Pi SPI MISO
    • CS -> Pi D5
    • RST -> Pi CE1
  • GPS Module (Serial)
    • VIN -> Pi 5V
    • GND -> Pi GND
    • TX -> Pi RX
    • RX -> Pi TX
  • Momentary, Normally Open Switch
    • In -> Pi 3V
    • Out -> Resistor -> Pi D16

The ground hardware, much more simply, is wired to the following Arduino pins:

  • RFM95W
    • VIN -> Arduino 5v
    • GND -> Arduino GND
    • G0 -> Arduino 13
    • MISO -> Arduino 12
    • MOSI -> Arduino 11
    • CS -> Arduino 4
    • RST -> Arduino 2

Telemetry

The air software logs all sensor readings to a timestamped CSV file under data and transmits them using a LoRA transceiver, and data logging cuts off after 30 minutes. The transmitted data is a simple binary sequence of doubles in the following order:

  • Unix Timestamp
  • Barometric Pressure (Pascals)
  • Temperature (Celsius)
  • Acceleration X (M/s/s)
  • Acceleration Y (M/s/s)
  • Acceleration Z (M/s/s)
  • Magnetic Direction X (Degrees)
  • Magnetic Direction Y (Degrees)
  • Magnetic Direction Z (Degrees)
  • Latitude
  • Longitude
  • GPS Signal Quality
  • Number of GPS sats

Setup

Ground

The ground Arduino software receives transmitted packets and echos them out to serial encoded in base 64. Install the ground.ino file using the Arduino IDE.

Dashboard

The dashboard is a text-based tool for tracking and logging received telemetry. To use it, download a release from the GitHub project or build the dashboard using the following steps:

$ cd ~
$ git clone [email protected]:johnjones4/white-vest.git
$ cd white-vest/ground/dashboard
$ make install
$ make build

Then, run the dashboard using the following build/dashboard-Darwin-i386 --input /dev/cu.usbmodem143101 --output text. Note that dashboard-Darwin-i386 will change based on the system you are using and /dev/cu.usbmodem143101 is the path to the Arduino serial connection. To view the web dashboard, pass in web for the --output option and open http://localhost:8080/.

Tool

The tool is a utility for after-flight work. To use it, download a release from the GitHub project or build the dashboard using the following steps:

$ cd ~
$ git clone [email protected]:johnjones4/white-vest.git
$ cd white-vest/ground/tool
$ make install
$ make build

The overall command structure is:

$ white-vest-tool [TASK] [FLAGS]

Taks/Flags:

  • convert: Converts telemtry data to plain old JSON for analysis
    • --input: The file path to the input file
    • --output: The file path to output to
    • --type: The "type" of data. Right now the only valid option, and the default value, is inboard. This is the CSV file generated on the telemetry module during flight. I recommend reviewing the data and clipping the pre-launch and post-landing useless data for faster conversion.
    • --progress: true or false, print a progress bar during conversion
  • summary: Analyze the data and print a few summary data points like apogee, max v, etc
    • --input: The file path to the input file (use the file made during convert)
  • chart: Generate altitude and velocity charts
    • --input: The file path to the input file (use the file made during convert)
    • --ouput: The directory to save the charts to

Air

This software requires I2C, SPI0, and Serial to be enabled on a Raspberry Pi.

To install this software on a Raspberry Pi, execute the following:

$ cd ~
$ git clone [email protected]:johnjones4/white-vest.git
$ cd white-vest/air
$ make install

Then, run make install-service

To start the software in the background, run sudo systemctl start air

In addition, you may verify wiring connections by running make sensor-test

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].