Skip to main content
util-ForwardingServer

util-ForwardingServer

The util-ForwardingServer forms the bridge between one mod-DebugTransceiver and one or more util-WebController instances.

Runs on user's laptop
Fully containerized using Docker, images available here
Adheres to Makefile spec
Source code is confidentially available using your Github token
Does not use service.yaml
Does not register with SystemManager

Functionalities

  • Support bi-directional communication from one Rover1 to up to 10 connected util-WebController clients
  • Support for controller handoff. Will decide on the active controller based on Human control request messages

Running this utility

tip

If you are running this utility on an ARM device (such as M1 macs), we recommend running this utility through Docker compose for improved performance.

  1. Fetch your local IP using ifconfig (linux/macOS) or ipconfig (windows). This IP should be in the 192.168.0.XXX range when connected to the ASE labs WiFi
  2. Download and run the latest docker image. Make sure to replace <YOUR_LOCAL_IP> with the IP found in step 0.
docker run --rm -e ASE_FWSERVER_IP='<YOUR_LOCAL_IP>' -p 7500:7500 -p 40000:40000/udp --pull=always  --name forwarding-server aselabsvu/forwarding-server:latest

Instead of using :latest, you can use a version tag as listed here.

Finally, access the ForwardingServer at localhost:7500 to confirm that it is running

Runtime arguments

FlagDefaultDescription
-debugfalseEnable debug level logging
-outputstdoutPath of the output file to log to
-server-addresslocalhost:7500the (HTTP) server address to listen on, including a port

Example usage

Bind to a specific IP on port 8080

# from make
make start runargs="-server-address 192.168.0.0:8080"
# from compiled binary
./util-ForwardingServer -server-address 192.168.0.0:7500

Run with debug logs, write as structued JSON to a log file

# from make
make start runargs="-debug -output log.json"
# from compiled binary
./util-ForwardingServer -debug -output log.json