Git Product home page Git Product logo

qliteosd's Introduction

QLiteOSD - Simple Arduino OSD for DJI FPV System

QLiteOSD is a simple Arduino Nano/ESP8266 based OSD for DJI FPV System for those times you want OSD but without the flight controller. Main features provide flight battery voltage, altitude, and GPS support. Perfect for Sport FPV flying.

NOTE: Currently the QLiteOSD is not working with the DJI 03 Air Units. If you are able to develope and test, please reach out.

Kits Available: https://www.etsy.com/listing/1272353602/qliteosd-for-dji-fpv-on-screen-display
Assembly Guide: https://github.com/Qrome/QLiteOSD/blob/master/QLiteOSD%20Board%20Assembly.pdf
FAQ: https://github.com/Qrome/QLiteOSD/blob/master/README.md#faq

Painless360 Build: https://www.youtube.com/watch?v=KWHZCemLLxw
Painless360 Compiling and Customization: https://www.youtube.com/watch?v=f42vbrB-Z7Y
Andrew Newton Video: https://www.youtube.com/watch?v=QzN6kRvfUFk

Components

Copyright (C) 2022 David Payne

This software is based on and uses software published by Paul Kurucz (pkuruz):opentelem_to_bst_bridge as well as software from d3ngit : djihdfpv_mavlink_to_msp_V2 and crashsalot : VOT_to_DJIFPV

THIS SOFTWARE IS PROVIDED IN AN "AS IS" CONDITION. NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. THE COMPANY SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Basic Configuration

  • Wemos D1 Mini TX1 to DJI Air unit RX (baud: 115200)
  • BMP280 Sensor on I2C default pins (ATMega A4 and A5/Wemos ESP8266 pins D1 and D2)
  • Optional GPS (ATMega RX:4 and TX:3/Wemos D1 Mini RX:D8 and TX:D7) -- GPS is optional and requires that you uncomment the USE_GPS in the OSD_positions_config.h file.
  • Voltage Sensor on A0 analog pin (use a 30K/7.5K Resistor divider)
  • Set Mini-360 DC-DC Buck Converter Step Down Module to 5V
  • Place the MSP folder under libraries in your local Arduino/libraries path
  • GPS Logging to Wemos D1 Mini file system (Version 1.4 Logs only the last 10 flights)
  • Download GPS logs through WiFi Access Point
  • ESP866 D3 pin grounded for 3 seconds will turn on WiFi mode (turns off OSD mode)
  • You can move the OSD items around the screen by using the chart below and setting the value in the OSD_positions_config.h file. If you wish to hide an option use the value 234. Note: not all OSD options are supported by DJI FPV goggles.

Compiled Binary Files

  • QLiteOSD.GPS_IMP_1.X.bin -- with GPS support and Imperial measure (feet, Mph)
  • QLiteOSD.GPS_MET_1.X.bin -- with GPS support and Metric measure (Meters, Kph)
  • QLiteOSD.NOGPS_IMP_1.X.bin -- NO GPS support and Imperial measure (feet altitude)
  • QLiteOSD.NOGPS_MET_1.X.bin -- NO GPS support and Metric measure (Meters altitude)

Operation

  • Run Pack Voltage to BAT pins (7.4 - 17V) -- This voltage will also power the DJI FPV unit.
  • Board -> DJI using the TX --> DJI Rx pin and battery/ground.
  • To send the arm command to the DJI unit to start recording raise the craft 1.5 meters higher than the home altitude. There is no disarm needed.
  • GPS Logging to OSD system and download from WiFi Access Point
  • Put in WiFi mode by grounding pin D3 for 3 seconds
  • When in WiFi mode connect to the Access Point using password 12345678
  • When connected to the access point pull up the web interface on http://192.168.4.1
  • 3D print your own case for the QLiteOSD: https://www.printables.com/model/259387-qliteosd-cover-for-dji-fpv-osd

OSD Placement

QLiteOSD initial Testing

OSD with Pack Voltage, Altitude, GPS, and Cross Hairs

QLiteOSD Preview

QLiteOSD Board

QLiteOSD v1.0 Board Diagram
QLiteOSD Basic Kit
QLiteOSD Basic Kit
QLiteOSD Basic Kit

FAQ

Will the QLiteOSD send the armed command to the DJI Video Transmitter?

  • Yes, the arm signal is sent when the OSD detects a change of +1.5 meters (about 5 feet) above the altitude the OSD was powered on with. This is nice as it will tell the DJI system to start recording and bump the transmit power up if you are using auto power on arming. This does not require GPS.

Is GPS required to use the QLiteOSD?

  • No, the GPS is not required. If you choose not to use the GPS, then you may want to consider using the NOGPS binary or compile the source with the defined USE_GPS commented out. This will remove the items on the OSD that are GPS related.

Can I move the locations of the OSD elements around in the goggles?

  • Yes, it would require editing the OSD_positions_config.h and referencing the mapping image to define the locations. You can enable or disable elements by the number assigned to it. See the notes in that file. After making changes to the config file you would then compile and load the binary to your OSD.

Can I have RSSI or LQ in the QLiteOSD?

  • This is currently not supported. Often this can be setup with audible alerts in your own radio. The QLiteOSD does not currently require any connection from the aircraft receiver.

Can I adjust the reading of the pack voltage?

  • Yes. The best way to get an accurate reading of the pack voltage is to adjust the output voltage of the Mini360 step down to as close to 6V as you can. When the Wemos D1 mini board is powered with 6V, the internal system 5V is very close to 5V and this is used in the calculation.

How do I enable the QLiteOSD GPS logging feature?

  • When using the GPS and the default compiled binary, it is enabled by default and every flight should log to the internal memory on the Wemos D1 Mini. To disable logging, compile the source code with #define LOG_GPS commented out in the OSD_positions_config.h file. Logging starts when the altitude changes + 1.5 meter above the powered on altitude and there is a GPS lock.

How do I download the GPX (GPS Log files) from the QLiteOSD?

  • Put the QLiteOSD device into WiFi Mode, join the Access Point and download the files.
    • When the OSD is on, jumper the Wemos D1 Mini D3 pin with GND for 3 seconds. The light will turn solid indicating it is now in WiFi Mode and is visible as an Access Point.
    • QLiteOSD_xxxxx – where the xxxxxx is the unique serial number on the chip will show. Join your phone or computer to the Access Point using the default password 12345678.
    • After connected to the divide over wifi, pull open a web browser to the following address: http://192.168.4.1 – this will pull up the logged files.
  • There are several free GPX Log file viewers including GeoTracker for Android. Google Earth will also view them.

qliteosd's People

Contributors

qrome avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

eddy71 lienmeat

qliteosd's Issues

No output to Google 2 with O3 Air Unit

No OSD output to Goggles 2 with O3 Air Unit

  1. Blue flashing light on unit
  2. Soldering verified
  3. Power verified
  4. Image verified (GPS, IMPERIAL)
  5. Goggles Menu Display>Canvas mode (the only option) > either Normal or HD, no joy on either.
  6. Verified TX to Airunit RX (white wire on original connector)
  7. Good video in low power mode. Raised 1.5m after powerup with no change

Instructions for using arduino nano

Hi great project
I see you have Arduino nano as an option as possible hardware on the parts list but no instructions on how to set up. I wanted to use the nano as I have a few lying around Could you add how to use I asked painless 360 as you reference his set-up video but he was not sure ?
Any advice would be appreciated.

issues disarming?

Hi there! Thanks for this code. Its working great for me and the DJI air unit arms and starts recording. the issue is that the air unit won't respond to a disarm msp command. Have you seen this issue and do you have any insight?

Thanks!

source code compiling

trying to compile source code after disabling a few of the osd elements and i get the following errors:

In file included from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:39:
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\OSD_positions_config.h:5: warning: "ESP8266" redefined
    5 | #define ESP8266  // Uncommment this line if using the ESP8266 (Wemos D1 Mini)
      | 
<command-line>: note: this is the location of the previous definition
In file included from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:37:
c:\Users\tarc6\Documents\audrino\libraries\MSP/MSP.h:231:32: warning: 'packed' attribute ignored for field of type 'msp_servo_mix_rules_t::<unnamed struct> [16]' [-Wattributes]
  231 |   } mixRule[MSP_MAX_SERVO_RULES];
      |                                ^
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'void setup()':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:196:7: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  196 |   if (SPIFFS.begin()) {
      |       ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'uint32_t logGetNextFileNum()':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:644:13: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  644 |   Dir dir = SPIFFS.openDir("/");
      |             ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'void logRemoveOldFiles(uint32_t)':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:661:5: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  661 |     SPIFFS.remove(String("/") + String(i));
      |     ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:667:5: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  667 |     SPIFFS.rename(oldFile,newFile);
      |     ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'void logFileCreate()':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:677:16: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  677 |   gpsLogFile = SPIFFS.open(fileName, "w");  //need to test what turning off without closing the file does
      |                ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'void showFiles()':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:767:13: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  767 |   Dir dir = SPIFFS.openDir("/");
      |             ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:785:3: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  785 |   SPIFFS.info(fsInfo);
      |   ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'void downloadFile()':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:821:26: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  821 |       File rawDataFile = SPIFFS.open(filename, "r");
      |                          ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:845:25: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
  845 |         char *msecVal = ".000";
      |                         ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:847:21: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
  847 |           msecVal = ".500";
      |                     ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'void deleteFiles()':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:863:3: warning: 'SPIFFS' is deprecated: SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
  863 |   SPIFFS.format();
      |   ^~~~~~
In file included from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/CertStoreBearSSL.h:26,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecureBearSSL.h:30,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiClientSecure.h:23,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/WiFiServerSecure.h:20,
                 from C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\libraries\ESP8266WiFi\src/ESP8266WiFi.h:41,
                 from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:61:
C:\Users\tarc6\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.2\cores\esp8266/FS.h:286:15: note: declared here
  286 | extern fs::FS SPIFFS __attribute__((deprecated("SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems.")));
      |               ^~~~~~
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'void send_msp_to_airunit(uint8_t)':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:348:9: warning: 'void* memcpy(void*, const void*, size_t)' writing 5 bytes into a region of size 4 overflows the destination [-Wstringop-overflow=]
  348 |   memcpy(fc_variant.flightControlIdentifier, fcVariant, sizeof(fcVariant));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
. Variables and constants in RAM (global, static), used 33500 / 80192 bytes (41%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ DATA     1636     initialized variables
╠══ RODATA   4072     constants       
╚══ BSS      27792    zeroed variables
. Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 63131 / 65536 bytes (96%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ ICACHE   32768    reserved space for flash instruction cache
╚══ IRAM     30363    code in IRAM    
. Code in flash (default, ICACHE_FLASH_ATTR), used 348328 / 1048576 bytes (33%)
║   SEGMENT  BYTES    DESCRIPTION
╚══ IROM     348328   code in flash   

after i comment out lines 5-9 in the osd_positions_config.h i get this error:

In file included from C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:37:
c:\Users\tarc6\Documents\audrino\libraries\MSP/MSP.h:231:32: warning: 'packed' attribute ignored for field of type 'msp_servo_mix_rules_t::<unnamed struct> [16]' [-Wattributes]
  231 |   } mixRule[MSP_MAX_SERVO_RULES];
      |                                ^
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino: In function 'void send_msp_to_airunit(uint8_t)':
C:\Users\tarc6\Desktop\QLiteOSD-1.5\QLiteOSD\QLiteOSD.ino:348:9: warning: 'void* memcpy(void*, const void*, size_t)' writing 5 bytes into a region of size 4 overflows the destination [-Wstringop-overflow=]
  348 |   memcpy(fc_variant.flightControlIdentifier, fcVariant, sizeof(fcVariant));
      |   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
. Variables and constants in RAM (global, static), used 29180 / 80192 bytes (36%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ DATA     1532     initialized variables
╠══ RODATA   992      constants       
╚══ BSS      26656    zeroed variables
. Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 61123 / 65536 bytes (93%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ ICACHE   32768    reserved space for flash instruction cache
╚══ IRAM     28355    code in IRAM    
. Code in flash (default, ICACHE_FLASH_ATTR), used 252120 / 1048576 bytes (24%)

I have also used one of the provided bin files to get the osd working but the voltage is not reading correctly even though i have the bec set for 5.9v.

I even tried verifying the code directly out of the zip file and still same errors ...i must be doing something wrong.

GPS not working

I currently have a foxeer m10 wired up and am not getting any gps info.

Add current sensor

The DJI OSD you designed is very good! Can you add current sensor and qmc5883l?

Cannot flash device

I downloaded the drivers and the device shows up as com3 but when I try to flash nothing happens. Also when plugged in the blue led flashes and then turns off.

Issue getting osd

Okay so I got the new d1 board, flashed it but when I plug it in I'm not getting anything. No flashing led when plugged into the board but it does flash when plugged into my computer

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.