Skip to content

Overview

Important Files/Folders:

  • main.go and everything underneath the internal direct; read in environment variables and set up everything

    • internal/cvs: deprecated
    • internal/influxdb: client to talk to the database
    • internal/mavlink: router to read in mavlink packets, store to database, and forward to other computers (specified in environment variables)
    • internal/obc: client to talk to the obc, basically just a wrapper around an HTTP client
    • internal/protos: compiled protobuf definitions for shared messages across different repos (Houston -> Hub -> OBCPP)
    • internal/server: most important HTTP server setup, listen on specified routes and run handler functions
    • internal/utils: utilities, don’t honestly remember what these were doing
  • HTTP Server

    • forward Frontend commands -> OBC, cache flight telemetry from Mavlink packets sent over radio, store in influx database