Overview
Purpose
The transceiver
service is a special service, made for debugging other ASE services running in a pipeline. It enables two-way communication to all running services to provide tuning and debugging functionalities.
We do not recommend installing this service manually, as the setup of the transceiver
service is fairly complex. When you click "enable debug mode" in roverctl-web
, this service will be downloaded and configured for you automatically.
In case you want to adjust this transceiver for your own needs, we advise to check out the "knowing more" series on the ASE website.
Installation
To install this service, the latest release of roverctl
should be installed for your system and your Rover should be powered on.
- Using roverctl
- Using roverctl-web
- Install the service from your terminal
# Replace ROVER_NUMBER with your the number label on your Rover (e.g. 7)
roverctl service install -r <ROVER_NUMBER> https://github.com/VU-ASE/transceiver/releases/latest/download/transceiver.zip
Recommended: click "enable debug mode" in the web interface.
OR:
- Open
roverctl-web
for your Rover
# Replace ROVER_NUMBER with your the number label on your Rover (e.g. 7)
roverctl -r <ROVER_NUMBER>
- Click on "install a service" button on the bottom left, and click "install from URL"
- Enter the URL of the latest release:
https://github.com/VU-ASE/transceiver/releases/latest/download/transceiver.zip
Follow this tutorial to understand how to use an ASE service. You can find more useful roverctl
commands here
Requirements
- A
passthrough
webRTC service should be running, and its address should be configured in the service.yaml- When you use
roverctl-web
, this will be configured for you automatically
- When you use
Inputs
As defined in the service.yaml, this service officially does not depend on any other services. Yet, when roverd
detects a service that registers as transceiver
it will pass all other services as inputs, so this transceiver
service will listen to all other services for debugging purposes.
Outputs
As defined in the service.yaml, this service exposes the following write streams:
transceiver
:- To this stream,
TuningState
messages will be written. - This stream is passed to all other services in the pipeline by
roverd
to enable two-way communication between thetransceiver
and another service.
- To this stream,