Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Service architecture and networking redesign #127

Merged
merged 239 commits into from
Aug 1, 2024
Merged

Commits on May 14, 2024

  1. Configuration menu
    Copy the full SHA
    fc64c52 View commit details
    Browse the repository at this point in the history

Commits on May 15, 2024

  1. Configuration menu
    Copy the full SHA
    123739a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aa9b326 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    df288c9 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    807db61 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    832ff68 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7d5518e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    610f98c View commit details
    Browse the repository at this point in the history
  8. Fix ExecStop command in gisnav-compose.service - we only want to stop…

    … gisnav services, not other services
    hmakelin committed May 15, 2024
    Configuration menu
    Copy the full SHA
    ed4e24c View commit details
    Browse the repository at this point in the history
  9. Fix postinst script

    hmakelin committed May 15, 2024
    Configuration menu
    Copy the full SHA
    7978833 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    2b3a691 View commit details
    Browse the repository at this point in the history
  11. Update HIL example docs page

    hmakelin committed May 15, 2024
    Configuration menu
    Copy the full SHA
    9da2fec View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    5a82cb5 View commit details
    Browse the repository at this point in the history
  13. Include Dockerfiles and build contexts for relevant services in gisna…

    …v-compose Debian package
    hmakelin committed May 15, 2024
    Configuration menu
    Copy the full SHA
    302f9fc View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    d663fa3 View commit details
    Browse the repository at this point in the history
  15. Keep containers, volumes, networks when gisnav-compose.service is sto…

    …pped and only remove them when the package is removed
    hmakelin committed May 15, 2024
    Configuration menu
    Copy the full SHA
    051adc8 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    f4314a3 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    9431037 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    6c54cbd View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    083ac24 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    e129ee5 View commit details
    Browse the repository at this point in the history

Commits on May 16, 2024

  1. Configuration menu
    Copy the full SHA
    3f353cf View commit details
    Browse the repository at this point in the history
  2. Update gisnav-compose Debian package build

    Copies over ROS package source code so that the .deb package can build the gisnav image on its own. Makes the
    package independent of any external container registry.
    
    Disables running px4 service by default (introduces docker-compose.companion.yaml override) as it is not intended
    to be run on the companion computer where gisnav-compose is intended to be installed.
    
    Makes postrm script more robust to missing files, missing commands etc.
    hmakelin committed May 16, 2024
    Configuration menu
    Copy the full SHA
    f63b78c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a3b601f View commit details
    Browse the repository at this point in the history
  4. Fix gisnav image build issues in Debian postinst script

    Includes dummy docs folder and vitepress/package.json to ensure gisnav image Dockerfile script goes through.
    
    Uses .gitignore to ensure rsync does not copy over unintended files to the Debian package
    hmakelin committed May 16, 2024
    Configuration menu
    Copy the full SHA
    a68df8e View commit details
    Browse the repository at this point in the history

Commits on May 17, 2024

  1. Configuration menu
    Copy the full SHA
    35eeb40 View commit details
    Browse the repository at this point in the history
  2. Fix indentation

    hmakelin committed May 17, 2024
    Configuration menu
    Copy the full SHA
    6469dee View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3ef18fd View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5357b29 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    566048a View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    08a6458 View commit details
    Browse the repository at this point in the history
  7. Fix gisnav-compose build

    Fix fileserver build by removing unneeded firefox browser
    
    Create containers in addition to just building them
    
    Remove old link to old Jetson Nano article from VitePress docs
    hmakelin committed May 17, 2024
    Configuration menu
    Copy the full SHA
    480ef3d View commit details
    Browse the repository at this point in the history

Commits on May 18, 2024

  1. Configuration menu
    Copy the full SHA
    7ac9660 View commit details
    Browse the repository at this point in the history
  2. Improve mavros build time

    hmakelin committed May 18, 2024
    Configuration menu
    Copy the full SHA
    e31de81 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a753efb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    66fe258 View commit details
    Browse the repository at this point in the history
  5. Update gisnav-compose postinst script to automatically create a tempo…

    …rary swapfile if needed
    hmakelin committed May 18, 2024
    Configuration menu
    Copy the full SHA
    fd97323 View commit details
    Browse the repository at this point in the history
  6. Do not have px4 as a gisnav service dependency - compose does not all…

    …ow overriding the depends_on key as an exception
    hmakelin committed May 18, 2024
    Configuration menu
    Copy the full SHA
    8f09746 View commit details
    Browse the repository at this point in the history

Commits on May 19, 2024

  1. Configuration menu
    Copy the full SHA
    162aa06 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cc3032c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    090e3c1 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e3054d9 View commit details
    Browse the repository at this point in the history
  5. Update homepage bookmarks

    hmakelin committed May 19, 2024
    Configuration menu
    Copy the full SHA
    6f48b7d View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    80b55f5 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    8884094 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    5c6f205 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    6cb58f3 View commit details
    Browse the repository at this point in the history
  10. Remove old comments

    hmakelin committed May 19, 2024
    Configuration menu
    Copy the full SHA
    d88883d View commit details
    Browse the repository at this point in the history
  11. Simplify example commands

    hmakelin committed May 19, 2024
    Configuration menu
    Copy the full SHA
    e65bb9a View commit details
    Browse the repository at this point in the history

Commits on May 20, 2024

  1. Improve install UX with gnv CLI and by automatically handling compose…

    … setup for different GPU manufacturers
    hmakelin committed May 20, 2024
    Configuration menu
    Copy the full SHA
    2808b49 View commit details
    Browse the repository at this point in the history
  2. Implement gnv status command

    hmakelin committed May 20, 2024
    Configuration menu
    Copy the full SHA
    9da3bc3 View commit details
    Browse the repository at this point in the history
  3. Make no GPU the default docker-compose.yaml configuration and add nvi…

    …dia override
    
    This is needed because the (Nvidia) device reservation cannot be overridden if made default
    hmakelin committed May 20, 2024
    Configuration menu
    Copy the full SHA
    97ccb16 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2fdf44a View commit details
    Browse the repository at this point in the history
  5. Fix typo

    hmakelin committed May 20, 2024
    Configuration menu
    Copy the full SHA
    84c1d67 View commit details
    Browse the repository at this point in the history
  6. Remove incorrect and unnecessary mounting of /dev/shm as a device ins…

    …tead of as a volume in docker-compose.broadcom.yaml override
    hmakelin committed May 20, 2024
    Configuration menu
    Copy the full SHA
    dc729aa View commit details
    Browse the repository at this point in the history

Commits on May 22, 2024

  1. Configuration menu
    Copy the full SHA
    a4ce1fb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8cf2435 View commit details
    Browse the repository at this point in the history
  3. Split commands and volumes into separate overrides - leave only pull …

    …and pull information (i.e. how to actually obtain the images) in the base compose file
    hmakelin committed May 22, 2024
    Configuration menu
    Copy the full SHA
    a63e8c8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    1697401 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ead0470 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    0b0a8a5 View commit details
    Browse the repository at this point in the history
  7. Update gisnav image Dockerfile path to ros packages after ros parent …

    …directory was introduced
    hmakelin committed May 22, 2024
    Configuration menu
    Copy the full SHA
    73b6b44 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    ac693d3 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    8ae5849 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    d3dcff4 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    1747b3c View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    33f6e2c View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    db0bde0 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    0656115 View commit details
    Browse the repository at this point in the history

Commits on May 23, 2024

  1. Imprve gnv api

    hmakelin committed May 23, 2024
    Configuration menu
    Copy the full SHA
    f65e806 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c6c4989 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8ee3317 View commit details
    Browse the repository at this point in the history
  4. Update service topography or networking diagram with latest changes

    Introduces a physical split between the simulation host and companion computer in preparation of supporting HIL deployments
    hmakelin committed May 23, 2024
    Configuration menu
    Copy the full SHA
    b5c84a9 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    cd7e124 View commit details
    Browse the repository at this point in the history
  6. Update docker compose deployment documentation

    The compose file has been split into too many files to specify manually and a script is now used to build to stack of Compose overlays
    hmakelin committed May 23, 2024
    Configuration menu
    Copy the full SHA
    3c14182 View commit details
    Browse the repository at this point in the history
  7. CLI deployment UX improvements

    We use prepare instead of setup because setup is often conflated with install which we have already done.
    
    Makes error message more explicit when various required env variables are empty or not defined.
    hmakelin committed May 23, 2024
    Configuration menu
    Copy the full SHA
    a490844 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    9c6a3b0 View commit details
    Browse the repository at this point in the history
  9. Add support for SITL deployment via gnv CLI tool

    This helps with not having to think about choosing which docker compose overlay configurations and which services to deploy
    hmakelin committed May 23, 2024
    Configuration menu
    Copy the full SHA
    dc8e506 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    363ee9c View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    af590dd View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    751987d View commit details
    Browse the repository at this point in the history

Commits on May 24, 2024

  1. Configuration menu
    Copy the full SHA
    65e1a7d View commit details
    Browse the repository at this point in the history
  2. Rename and add TODOs for future removal of older docker compose confi…

    …guration files
    
    These files should not be needed but are still kept in the repo for future reference
    hmakelin committed May 24, 2024
    Configuration menu
    Copy the full SHA
    69c3c68 View commit details
    Browse the repository at this point in the history
  3. Make it so that the .deb file does not have to be repackaged every ti…

    …me on install
    
    Because of the timestamped build ID we either had to call clean or make it a .PHONY target earlier to prevent loading up the dist folder with old Debian packages
    hmakelin committed May 24, 2024
    Configuration menu
    Copy the full SHA
    513c193 View commit details
    Browse the repository at this point in the history
  4. Make the export_compose_files work with any path, not just the hard-c…

    …oded installation path
    
    This makes the script useful also for development - documentation updated to reflect this
    hmakelin committed May 24, 2024
    Configuration menu
    Copy the full SHA
    2d726ba View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f3efd83 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    2e78819 View commit details
    Browse the repository at this point in the history
  7. Fix various networking issues in local SITL simulation

    - uXRCE port passed as host to uxrce_dds_client start
    - use of localhost where host.docker.internal was intended
    - remove ugly uxrce_dds_client restart by editing the rcS file instead using sed
    - remove ROS middleware from mavlink network which now is physically separate
    - use environment variables instead of hard-coded values for ports in compose config files wherever appropriate
    - open (currently hard-coded) port 5600 for UDP video for gscam service
    hmakelin committed May 24, 2024
    Configuration menu
    Copy the full SHA
    d228d15 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    6c45255 View commit details
    Browse the repository at this point in the history
  9. Fix gscam service hostname

    hmakelin committed May 24, 2024
    Configuration menu
    Copy the full SHA
    4088ce5 View commit details
    Browse the repository at this point in the history
  10. Add DDS middleware network to connect ROS middleware and GISNav

    Gets around problems around shared memory transport between Docker containers (more info in dds network description label and updated docs)
    hmakelin committed May 24, 2024
    Configuration menu
    Copy the full SHA
    b9cec25 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    595bcc7 View commit details
    Browse the repository at this point in the history

Commits on May 25, 2024

  1. Move simulator services and QGC to host network

    With px4 we need to use the host network because the uXRCE-DDS bridge seems to use ephemeral ports for inbound communication (SensorGps message) - unverified
    
    Ideally they simulator and QGC would still be in a dedicated mavlink network
    hmakelin committed May 25, 2024
    Configuration menu
    Copy the full SHA
    988ad7f View commit details
    Browse the repository at this point in the history
  2. Better define gnv command tool as a Docker Compose wrapper - command …

    …is passed onto docker compose
    
    This significanly reduces the functionality of the tool while at the same time reducing amount of maintainable code
    hmakelin committed May 25, 2024
    Configuration menu
    Copy the full SHA
    305291c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ec648bc View commit details
    Browse the repository at this point in the history
  4. Check if xhost command is available in expose-xhost target (not avail…

    …able e.g. on raspberry pi by default)
    hmakelin committed May 25, 2024
    Configuration menu
    Copy the full SHA
    d605fce View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    20795de View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    5e237e4 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2024

  1. Update gnc documentation

    hmakelin committed May 26, 2024
    Configuration menu
    Copy the full SHA
    13c6228 View commit details
    Browse the repository at this point in the history
  2. Fix edge case behaviors for gnc

    Now understands localhost and 127.0.0.1 are not remotes and will not use ssh.
    
    Correctly runs services on localhost if mixed with services running on remotes.
    
    Correctly runs when no services are specified, whether on local or remote.
    
    Correctly runs when local services are given while no services are given for remote (i.e. gnc stop px4 @remotehost).
    hmakelin committed May 26, 2024
    Configuration menu
    Copy the full SHA
    e4f4bfd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c18ce49 View commit details
    Browse the repository at this point in the history
  4. Minor styling improvements

    hmakelin committed May 26, 2024
    Configuration menu
    Copy the full SHA
    115e8bb View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    dd503a4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1f89244 View commit details
    Browse the repository at this point in the history
  7. Fix gnc for more types of commands

    Parses any non-service tokens coming after the first recognized service as a container command
    hmakelin committed May 26, 2024
    Configuration menu
    Copy the full SHA
    9d20933 View commit details
    Browse the repository at this point in the history

Commits on May 27, 2024

  1. Expand GISNav CLI docs

    Adds example and notes on multi-vehicle simulation
    hmakelin committed May 27, 2024
    Configuration menu
    Copy the full SHA
    44c4963 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    affe6c0 View commit details
    Browse the repository at this point in the history
  3. Fix container command parsing issue

    container commands args with preceding dashes were considered command args for current shell
    hmakelin committed May 27, 2024
    Configuration menu
    Copy the full SHA
    0c06d9e View commit details
    Browse the repository at this point in the history
  4. Fix HIL commands in docs

    hmakelin committed May 27, 2024
    Configuration menu
    Copy the full SHA
    4cb6b89 View commit details
    Browse the repository at this point in the history

Commits on May 28, 2024

  1. Enable uploading firmware via container

    Need to tweak PX4 upload.cmake to support the FMUK66 bootloader
    
    Map USB serial port and bootloader to px4 and qgc when using the GISNav CLI hil command
    
    Update HIL docs
    
    Bring back modifications to PX4 hitl_iris world - we need the KSQL airport world and starting location (does not yet add static camera)
    hmakelin committed May 28, 2024
    Configuration menu
    Copy the full SHA
    4a5594d View commit details
    Browse the repository at this point in the history

Commits on May 29, 2024

  1. Configuration menu
    Copy the full SHA
    37ff604 View commit details
    Browse the repository at this point in the history
  2. Enable HIL simulation

    Adds simulated camera to iris_hitl model
    
    Fixes hitl_iris world name in px4 start command
    
    Fixes sed command that adds support for FMUK66 board to PX4 platforms/nuttx/cmake/upload
    hmakelin committed May 29, 2024
    Configuration menu
    Copy the full SHA
    530262a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ed36a9d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e2963b2 View commit details
    Browse the repository at this point in the history

Commits on May 30, 2024

  1. Handle large file uploads better in mapserver entrypoint script

    Also uses a lockfile to prevent recursion issues if something goes wrong
    hmakelin committed May 30, 2024
    Configuration menu
    Copy the full SHA
    470b4af View commit details
    Browse the repository at this point in the history
  2. Enable parallel execution for gnc to improve performance

    Note: SIGINT not yet properly handled in remote shell if Ctrl-C pressed in local shell
    hmakelin committed May 30, 2024
    Configuration menu
    Copy the full SHA
    6de774e View commit details
    Browse the repository at this point in the history
  3. Handle SIGINT when attaching terminal to a remote container

    We store the remote pseudo-tty ID into a remote tempfile which is identified by the local PID. We trap the local SIGINT, ssh into remote and kill the docker-compose process matching the open terminal that is written into the file that matches our local PID.
    hmakelin committed May 30, 2024
    Configuration menu
    Copy the full SHA
    d59893a View commit details
    Browse the repository at this point in the history

Commits on May 31, 2024

  1. Make exec command work locally

    gnc exec does not yet work on remote services
    hmakelin committed May 31, 2024
    Configuration menu
    Copy the full SHA
    7d127e2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6c843ff View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    63e70d3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a154412 View commit details
    Browse the repository at this point in the history
  5. Expose avahi-daemon socket to px4 container so that IP of hostnames r…

    …aspberrypi.local can be found from within the container
    hmakelin committed May 31, 2024
    Configuration menu
    Copy the full SHA
    7ec8e6a View commit details
    Browse the repository at this point in the history
  6. Enable PX4_VIDEO_HOST_IP env variable by overwriting hard-coded 127.0…

    ….0.1 in typhoon_h480.sdf.jinja template
    hmakelin committed May 31, 2024
    Configuration menu
    Copy the full SHA
    089a6cb View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    502b62f View commit details
    Browse the repository at this point in the history
  8. Disable automatic build of Docker images to speed up installation

    Prevents package manager from getting into funny state when lengthy builds are inevitably interrupted
    hmakelin committed May 31, 2024
    Configuration menu
    Copy the full SHA
    eb6fcea View commit details
    Browse the repository at this point in the history
  9. Update docs

    hmakelin committed May 31, 2024
    Configuration menu
    Copy the full SHA
    12743b0 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    e0430eb View commit details
    Browse the repository at this point in the history

Commits on Jun 1, 2024

  1. Add web based maps viewer

    Current QGIS functionality but more lightweight and accessible via browser via the admin portal.
    
    Also fixes issue of .vrt files not always being created by maprserver entrypoint.sh due to lock files.
    hmakelin committed Jun 1, 2024
    Configuration menu
    Copy the full SHA
    06619e9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4f62c4d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    31e8061 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4a4a592 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    456d802 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d62b3eb View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    0b86f82 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    60f9995 View commit details
    Browse the repository at this point in the history

Commits on Jun 2, 2024

  1. Configuration menu
    Copy the full SHA
    59fbe59 View commit details
    Browse the repository at this point in the history
  2. Wait for GDAL supported raster files to be fully copied until attempt…

    …ing gdalbuildvrt on them
    hmakelin committed Jun 2, 2024
    Configuration menu
    Copy the full SHA
    b4b0e82 View commit details
    Browse the repository at this point in the history
  3. Relax conditions for successful nginx startup by requiring only homep…

    …age but not necessarily other services to resolve at startup
    hmakelin committed Jun 2, 2024
    Configuration menu
    Copy the full SHA
    e71f0db View commit details
    Browse the repository at this point in the history
  4. Add command to inspect env variables

    Makes debugging environment related issues easier
    hmakelin committed Jun 2, 2024
    Configuration menu
    Copy the full SHA
    fe7becd View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2024

  1. Fix resolution of services reverse-proxied by nginx via Docker DNS

    Ensures the DNS name for the dependency services is allocated before Nginx service is started
    hmakelin committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    3b4c97e View commit details
    Browse the repository at this point in the history
  2. Fix middleware healthchecks

    Streamline healthchecks by only checking output, not input
    
    Ensure ros2 topic echo exits with zero exit code before timeout by using --once option
    
    Remove redundant PX4_VIDEO_HOST env variable and use GISNAV_COMPANION_HOST instead
    
    Rename ROS_VERSION env variable to ROS_DISTRO to harmonize and resolve conflicts with ROS convention when sourcing the ROS workspace
    
    Split video streaming configuration to dedicated compose file to improve maintainability
    hmakelin committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    ebaaed1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    73165b1 View commit details
    Browse the repository at this point in the history
  4. Fix micro-ros-agent healthcheck

    Checks that we have outgoing UDP packets from source port 8888 at the uSRCE-DDS Agent end
    hmakelin committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    32d2116 View commit details
    Browse the repository at this point in the history
  5. Server WFS-T via MapServer

    Removes old QGIS service in favor of new OpenLayers based web client
    
    gisnav service now talks to mapserver instead of database directly
    
    New WFSTNode to replace old QGISNode
    
    OpenLayers replaces Leaflet due to better WFS support
    hmakelin committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    c6fa9a3 View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2024

  1. Add TinyOWS for WFS-T support

    MapServer does not support WFS-T
    
    Separate container and local launch files to adjust hostname of mapserver URL as needed
    
    Rename gps_table to feature.position for better compliance with OGC standards
    
    Add missing COLCON_IGNORE file to debian build folder to prevent nesting of colcon workspaces
    hmakelin committed Jun 4, 2024
    Configuration menu
    Copy the full SHA
    882b7fa View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2024

  1. Make WFS-T Insert work

    Symlinking /cgi-bin/tinyows to /cgi-bin/tinyows.cgi seems to be important
    
    Position geometries in feature schema
    
    Configure tinyows in separate XML file for easier readability of separate config files
    hmakelin committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    78be60b View commit details
    Browse the repository at this point in the history
  2. Ensure position shows up on OL

    This leaves TinyOWS to only serve WFS-T requests, while MapServer handles WFS
    hmakelin committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    5a079c1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c79505e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    cc0f2ba View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c70173f View commit details
    Browse the repository at this point in the history
  6. Clear features on WFSTNode startup

    Prevents data from successive flight missions from cluttering the map view while requiring no active db maintenance from users
    hmakelin committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    d9ca73b View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    6feb469 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    f4c532b View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    5c56684 View commit details
    Browse the repository at this point in the history
  10. First batch of documentation updates after networking redesign to sup…

    …port HIL deployments
    
    Changes some Raspberry Pi references to Jetson Nano since the Jetson is used for testing HIL now.
    
    Moves the mock GPS demo page from getting started section to the simulation section to improve categorization of topics
    hmakelin committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    dcd99ce View commit details
    Browse the repository at this point in the history

Commits on Jun 6, 2024

  1. Configuration menu
    Copy the full SHA
    8f9e661 View commit details
    Browse the repository at this point in the history
  2. Use a second mapfile with Docker DNS hostname for mapserver for conta…

    …inerized gisnav deployment
    
    Ideally this would be done with a single mapfile, possibly using runtime substitution
    hmakelin committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    ee4dff2 View commit details
    Browse the repository at this point in the history
  3. Use runtime variable substitution to remove duplication of configurat…

    …ion via second mapfile
    hmakelin committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    303ae6a View commit details
    Browse the repository at this point in the history
  4. Check for display availability before adding X11 Compose overlay

    Adds the required x11-utils (xdpyinfo) along with other requirements to Debian control file
    hmakelin committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    b005fd7 View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2024

  1. Configuration menu
    Copy the full SHA
    e759b9a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    29cedfd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    13f264c View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    126da87 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    39a1257 View commit details
    Browse the repository at this point in the history

Commits on Jun 8, 2024

  1. Configuration menu
    Copy the full SHA
    d0de89b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9d3b834 View commit details
    Browse the repository at this point in the history
  3. Fix headless mode for px4 service

    Unset HEADLESS in entrypoint script if value is blank or 0. PX4/Gazebo seems to only check whether the env variable is set and not what its value is
    hmakelin committed Jun 8, 2024
    Configuration menu
    Copy the full SHA
    11ae2a7 View commit details
    Browse the repository at this point in the history
  4. Fix headless env variable mapping to containers

    Uses a separate Compose file to prevent headless configuration from overwriting the X11 configuration YAML anchor
    
    Apply env variables during container creation, not during start, in remote HIL and SITL example commands
    hmakelin committed Jun 8, 2024
    Configuration menu
    Copy the full SHA
    11c3f77 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2024

  1. Configuration menu
    Copy the full SHA
    5fb32f1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    eed0c29 View commit details
    Browse the repository at this point in the history
  3. Update MAVROS to v2.8

    Use tf.send to simplify bbox node implementation
    hmakelin committed Jun 10, 2024
    Configuration menu
    Copy the full SHA
    80bf021 View commit details
    Browse the repository at this point in the history
  4. Old camera frame was RFU while new gimbal_0 is FRD so add a static co…

    …nversion between the two
    
    REP 103 would require the camera frame to be FLU so we are not compliant yet
    hmakelin committed Jun 10, 2024
    Configuration menu
    Copy the full SHA
    90c1737 View commit details
    Browse the repository at this point in the history

Commits on Jun 11, 2024

  1. Configuration menu
    Copy the full SHA
    2c03d56 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1e05fe3 View commit details
    Browse the repository at this point in the history
  3. Remove opencv GUI/Qt dependency by using rqt for debug visualizations

    Simplifies deployment of gisnav service on headless systems. Simplifies dependency chain.
    hmakelin committed Jun 11, 2024
    Configuration menu
    Copy the full SHA
    b0d0592 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2024

  1. Configuration menu
    Copy the full SHA
    ae96fc3 View commit details
    Browse the repository at this point in the history
  2. WIP: VO and Torch in separate nodes to improve allocation across CPU …

    …cores on devices without GPU
    
    E.g. on Raspberry Pi this allows allocating VO and deep matching on separate CPU cores, mitigating the matching bottleneck
    hmakelin committed Jun 12, 2024
    Configuration menu
    Copy the full SHA
    1d32520 View commit details
    Browse the repository at this point in the history
  3. Fix camera(_flu) static transform broadcaster name

    This used to be RFU but the implementation was changed without changing the name earlier
    hmakelin committed Jun 12, 2024
    Configuration menu
    Copy the full SHA
    9efbe5c View commit details
    Browse the repository at this point in the history
  4. Fix local.launch.py file

    Earlier version did not launch uORB node as intended. New implementation very close to container.launch.py.
    hmakelin committed Jun 12, 2024
    Configuration menu
    Copy the full SHA
    b83224a View commit details
    Browse the repository at this point in the history
  5. Cache rotated reference image

    Eliminates excessive re-rotation of reference map, freeing up some CPU capacity
    hmakelin committed Jun 12, 2024
    Configuration menu
    Copy the full SHA
    fce4369 View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2024

  1. Introduced roll and pitch stabilized base_link frame

    Ensures MAVROS gimbal_control plugin gimbal_{i} frames take stabilization into account when published to tf2.
    
    Makes camera_frd a child of camera instead of the other way around.
    hmakelin committed Jun 14, 2024
    Configuration menu
    Copy the full SHA
    bd53ede View commit details
    Browse the repository at this point in the history
  2. Reduce video framerate to 5 FPS (5 Hz)

    Converts video to grayscale already in middleware to hopefully reduce computationa load downstream
    
    5 Hz is the expected mock GPS sensor publish rate
    hmakelin committed Jun 14, 2024
    Configuration menu
    Copy the full SHA
    a5691a9 View commit details
    Browse the repository at this point in the history

Commits on Jun 17, 2024

  1. Remove postgres related dependency

    Direct link to postgres from gisnav was removed. gisnav service now talks to mapserver instead.
    hmakelin committed Jun 17, 2024
    Configuration menu
    Copy the full SHA
    f1b455c View commit details
    Browse the repository at this point in the history

Commits on Jun 18, 2024

  1. WIP: Implement VO against odom frame

    Earlier method was used to fuse velocity only and skipped frames receiving stereo couples via StereoNode.
    
    We now need an unbroken chain of frames for VO so StereoNode is skipped for computing VO poses.
    
    Local EKF publishes the odom to base_link transform, while a global EKF publishes map to odom (not yet updated).
    
    Frames prefixed with gisnav_ to avoid conflict with mavros published frames.
    
    TODO: scaling to meters, fix occasional resets of odom to base_link to 0
    hmakelin committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    a65b5c1 View commit details
    Browse the repository at this point in the history
  2. Fix occasional unintended resets of odom frame

    Caused most likely by timestamp extrapolation issues due to odom to base_link transform being published by EKF filter
    hmakelin committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    f8dc34b View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2024

  1. Scale VO poses to meters

    Uses vehicle estimated altitude and camera pitch to estimate distance to ground along optical axis.
    hmakelin committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    8a3fab7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8022f55 View commit details
    Browse the repository at this point in the history

Commits on Jun 22, 2024

  1. Publish map to odom via filter

    Sets covariances to zero to make debugging easier.
    
    Changes global filter to UKF which should be more robust.
    hmakelin committed Jun 22, 2024
    Configuration menu
    Copy the full SHA
    a1d3da5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d3e90ab View commit details
    Browse the repository at this point in the history

Commits on Jun 23, 2024

  1. Configuration menu
    Copy the full SHA
    2474912 View commit details
    Browse the repository at this point in the history

Commits on Jun 24, 2024

  1. Fix gisnav_base_link orientation in gisnav_map frame

    The EKF expected the gisnav_base_link pose but we were publishing gisnav_camera_link_optical instead in PoseNode
    hmakelin committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    a56a77c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    495e6e9 View commit details
    Browse the repository at this point in the history

Commits on Jun 27, 2024

  1. Handle VO keyframe/reference frame falling behind

    Occasionally the issue would have led to VO being disabled (keyframe drifting out of current field of view)
    hmakelin committed Jun 27, 2024
    Configuration menu
    Copy the full SHA
    154729f View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2024

  1. Configuration menu
    Copy the full SHA
    96688e6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1790381 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    68a23b4 View commit details
    Browse the repository at this point in the history
  4. Only publish mock GPS messages from odom frame where velocity should …

    …be smoother and less likely to be overstated
    hmakelin committed Jun 28, 2024
    Configuration menu
    Copy the full SHA
    9858804 View commit details
    Browse the repository at this point in the history
  5. Make gisnav_map REP 105 compliant

    Initializes it as an ENU frame roughly in same place as the MAVROS published map frame
    hmakelin committed Jun 28, 2024
    Configuration menu
    Copy the full SHA
    c5cf5be View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    376a9c7 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1b7aff3 View commit details
    Browse the repository at this point in the history

Commits on Jun 30, 2024

  1. Configuration menu
    Copy the full SHA
    c75da44 View commit details
    Browse the repository at this point in the history

Commits on Jul 3, 2024

  1. Git commit fix pose chain timestamps

    Uses multithreaded executor to ensure required transforms are available in the buffer when needed.
    
    Multithreading for callbacks is important especially when running on CPU only (i.e. pose estimation takes
    a lot of CPU and prevents the buffer from getting fresh transforms)
    hmakelin committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    f6ccdad View commit details
    Browse the repository at this point in the history
  2. Simplify run function

    hmakelin committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    af1d64b View commit details
    Browse the repository at this point in the history
  3. Add a short timeout for transform lookups in posenode in case matchin…

    …g is fast (e.g. on GPU)
    hmakelin committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    477b7b6 View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2024

  1. Configuration menu
    Copy the full SHA
    ba81a0d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d0f6b56 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1a6414e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8028834 View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2024

  1. Configuration menu
    Copy the full SHA
    00cfa3c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e7e29f1 View commit details
    Browse the repository at this point in the history

Commits on Jul 6, 2024

  1. Configuration menu
    Copy the full SHA
    a313b68 View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2024

  1. Configuration menu
    Copy the full SHA
    77ae8e0 View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2024

  1. Configuration menu
    Copy the full SHA
    724ea8b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3af19dd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5e82484 View commit details
    Browse the repository at this point in the history

Commits on Jul 13, 2024

  1. Configuration menu
    Copy the full SHA
    1a912e6 View commit details
    Browse the repository at this point in the history
  2. Handle exception

    hmakelin committed Jul 13, 2024
    Configuration menu
    Copy the full SHA
    ff0a67e View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2024

  1. Configuration menu
    Copy the full SHA
    0e1de45 View commit details
    Browse the repository at this point in the history
  2. Initialize gisnav_map to gisnav_odom from FCU to more quickly get sta…

    …rted with VO
    
    This ensures we can use VO even when no global matches have yet arrived.
    
    Also helps with debugging when gisnav_map and gisnav_odom are initialized to match the FCU (MAVROS) published equivalents
    hmakelin committed Jul 14, 2024
    Configuration menu
    Copy the full SHA
    13b76a0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    212885d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a1f7103 View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2024

  1. Configuration menu
    Copy the full SHA
    3b0b7fb View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2024

  1. Use SIFT keypoints for deep matching

    Paves way for significantly improving performance by (1) sharing keypoints for query image between LightGlue and visual odometry, and by (2) caching rotation independent SIFT keypoints for map tiles (DISK is not rotation independent)
    hmakelin committed Jul 26, 2024
    Configuration menu
    Copy the full SHA
    305cfb1 View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2024

  1. Configuration menu
    Copy the full SHA
    1b14bd1 View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2024

  1. Configuration menu
    Copy the full SHA
    6db8517 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d253680 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    27aea35 View commit details
    Browse the repository at this point in the history
  4. Rotate map at discrete configurable intervals (integer degrees)

    This enables supporting cached precomputed keypoints and descriptors for reference maps later
    hmakelin committed Jul 28, 2024
    Configuration menu
    Copy the full SHA
    57b362f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b879102 View commit details
    Browse the repository at this point in the history
  6. Fix brute force matcher in TwistNode

    This change needed because ORB features were swapped for SIFT features
    hmakelin committed Jul 28, 2024
    Configuration menu
    Copy the full SHA
    9659d99 View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2024

  1. Configuration menu
    Copy the full SHA
    74f039d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8198157 View commit details
    Browse the repository at this point in the history
  3. Prevent reference keypoints recomputation being triggered too often

    Earlier the recomputation would be triggered if a new OrthoImage message was received even if the new map was the same as the old one
    hmakelin committed Jul 29, 2024
    Configuration menu
    Copy the full SHA
    aef6ec2 View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2024

  1. Configuration menu
    Copy the full SHA
    1988583 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2024

  1. Fix orthoimage timestamp unintendedly being set to zero that prevente…

    …d reference raster from updating with camera field of view movement
    hmakelin committed Jul 31, 2024
    Configuration menu
    Copy the full SHA
    c4275c2 View commit details
    Browse the repository at this point in the history
  2. Have separate model configs for CPU and GPU

    Ideally model parameters would be adjusted dynamically based on detected matching speed at runtime regardless of CPU/GPU
    hmakelin committed Jul 31, 2024
    Configuration menu
    Copy the full SHA
    6d9cbc2 View commit details
    Browse the repository at this point in the history
  3. Update system requirements notice

    System is developed and tested on Raspberry Pi 5 but recommend Jetson Orin Nano instead even though not tested on that board.
    
    Performance much better using GPU
    hmakelin committed Jul 31, 2024
    Configuration menu
    Copy the full SHA
    f31e834 View commit details
    Browse the repository at this point in the history

Commits on Aug 1, 2024

  1. Configuration menu
    Copy the full SHA
    da2cb0f View commit details
    Browse the repository at this point in the history
  2. Fix launch tests [skip ci]

    hmakelin committed Aug 1, 2024
    Configuration menu
    Copy the full SHA
    01dde48 View commit details
    Browse the repository at this point in the history