Giter Site home page Giter Site logo

esp-vtx-gs-rs's Introduction

ESP-VTX-GS

Ground Station of ESP-VTX. Rewrite from the c++ origin project: https://github.com/jeanlemotan/esp32-cam-fpv/tree/main/gs.

Why rewrite it? The main reason is that I don't like cpp, and I felt difficult and worried when I want to add some new features or do some refactoring, so at last, I try using rust rewrite it. Not for performance or latency consideration, just for more easily maintain the project.

The new project will not inherit all features from origin project, actually I remove many of them (like GUI/JPEG decode etc. these may be added in the feture, but for now, I prefer doing these work on Mobile platform.)

Features

  • receieve the jpeg parts packets and do FEC
  • send data out through udp
  • ground2air packets
  • multi card support[ongoing]

Send Data Through Udp

you can set the target ip by setting option argument:--target_ip

for example:

./esp-vtx-gs-rs -d DEVICE_NAME --target_ip 192.168.2.101

if you want to send jpeg data to mobile phone to work with: https://github.com/Ncerzzk/ESPVTxAndroid

  • connect mobile phone with the ground station board(PC or some other boards)
  • mobile phone share internnet with ground station by usb
  • check the mobile phone ip in ground station: netstat -rn
  • set target_ip to the ip of mobile

Development related

bind generate

this project rely on some struct defined in c headers(packet.h and structures.h) as it's not a good way to redefine them in Rust.

so we use bindgen to generate the bind file:

bindgen packets.h -- -x c++ > bind_packet.rs

this file should be update and regenerated if c headers are edited in air sied.

esp-vtx-gs-rs's People

Contributors

ncerzzk avatar

Stargazers

Kevin Su avatar gotoday avatar  avatar DBin_K avatar ChenShuda avatar

Watchers

 avatar  avatar

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.