0% found this document useful (0 votes)
32 views5 pages

Creating A DIY Variometer For A Paraglider Using An Arduino Mini

Uploaded by

zoran zdravcha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views5 pages

Creating A DIY Variometer For A Paraglider Using An Arduino Mini

Uploaded by

zoran zdravcha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Creating a DIY variometer for a paraglider using an Arduino Mini, MS5611 barometer, NEO-6 GPS

module, WS2812 LED strip, HC-05 Bluetooth module, and a buzzer is a fun and educational project.
Below is a high-level guide to help you get started, along with some example code.

### Components Needed:

- **Arduino Mini**

- **MS5611 Barometric Pressure Sensor**

- **NEO-6 GPS Module**

- **WS2812 LED Strip**

- **HC-05 Bluetooth Module**

- **Buzzer**

- **Breadboard and Jumper Wires**

- **Battery (for powering the Arduino)**

- **Resistors (if needed)**

- **Software: Arduino IDE**

### Wiring Diagram:

1. **MS5611 Connections:**

- VCC -> 3.3V or 5V on Arduino

- GND -> GND on Arduino

- SDA -> A4 (or any other I2C SDA pin on the Arduino)

- SCL -> A5 (or any other I2C SCL pin on the Arduino)

2. **NEO-6 Connections:**

- VCC -> 5V on Arduino

- GND -> GND on Arduino

- TX -> RX (D0) on Arduino

- RX -> TX (D1) on Arduino


3. **WS2812 Connections:**

- VCC -> 5V on Arduino

- GND -> GND on Arduino

- Data In -> Digital Pin (e.g., D2 on Arduino)

4. **HC-05 Connections:**

- VCC -> 5V on Arduino

- GND -> GND on Arduino

- TX -> RX (D3) on Arduino

- RX -> TX (D4) on Arduino

5. **Buzzer:**

- Connect one pin of the buzzer to a digital output pin (e.g., D5) and the other pin to GND.

### Example Code:

Here is a simplified version of the code to get you started:

#include <Wire.h>

#include <Adafruit_Sensor.h>

#include <Adafruit_MS5611.h>

#include <TinyGPS++.h>

#include <FastLED.h>

#define LED_PIN 2

#define NUM_LEDS 1

#define BUZZER_PIN 5
Adafruit_MS5611 ms5611 = Adafruit_MS5611();

TinyGPSPlus gps;

char gpsOutput[100];

CRGB leds[NUM_LEDS];

void setup() {

Serial.begin(9600);

Wire.begin();

// Initialize the MS5611

if (!ms5611.begin()) {

Serial.println("MS5611 not found");

while (1);

// Initialize the WS2812

FastLED.addLeds<WS2812, LED_PIN, RGB>(leds, NUM_LEDS);

pinMode(BUZZER_PIN, OUTPUT);

void loop() {

// Read barometer data

float pressure = ms5611.readPressure();

float altitude = ms5611.readAltitude();

Serial.print("Pressure: ");

Serial.print(pressure);

Serial.print(" Altitude: ");


Serial.println(altitude);

// Check for GPS data

while (Serial.available() > 0) {

gps.encode(Serial.read());

// If we have a GPS fix, add logic to do something with it

if (gps.location.isValid()) {

// Send GPS data over Bluetooth or process it

snprintf(gpsOutput, sizeof(gpsOutput), "Lat: %.6f, Lng: %.6f", gps.location.lat(), gps.location.lng());

Serial.println(gpsOutput);

// Buzzer and LED triggers for altitude change

if (altitude > 1000) { // Example threshold

digitalWrite(BUZZER_PIN, HIGH);

leds[0] = CRGB::Red; // Change LED color

} else {

digitalWrite(BUZZER_PIN, LOW);

leds[0] = CRGB::Green; // Relax LED color

FastLED.show();

delay(1000); // Loop delay

```
### Functionality Overview:

- **Altitude Measurement:** The MS5611 provides altitude data based on barometric pressure.

- **GPS Tracking:** The NEO-6 GPS module fetches location data.

- **Buzzer and LED Indicator:** The buzzer and WS2812 LED strip indicate when you exceed certain
altitude thresholds.

- **Bluetooth Communication:** The HC-05 module can be used to send data to a smartphone app for
logging or further analysis.

### Additional Notes:

1. **Power Supply:** Ensure you have a suitable power supply for both the Arduino and peripherals
while in the air.

2. **Flight Safety:** Always conduct ground testing before flying and ensure that the device does not
interfere with other equipment.

3. **Libraries:** Make sure to install the required libraries in the Arduino IDE such as `Adafruit MS5611`,
`TinyGPS++`, and `FastLED`.

### Future Improvements:

- Add more sophisticated logic to minimize false positives/negatives from the altitude reading.

- Implement logging to SD card for later analysis.

- Send GPS data via Bluetooth to a mobile app for real-time tracking.

Feel free to customize the code and wiring based on your project requirements and component
specifications! Happy flying!

You might also like