Deep dive

From remote debugging to data discovery, learn how Formant works from top to bottom.

    Application configuration

    Formant aims to make even the fine-tuning of robotics operations possible from a remote setting. In doing so, we’ve developed an intuitive interface through which engineers can essentially “get under the hood” of your application from afar, and reconfigure essential applications directly within the Formant interface. 

    Put simply, remote application configuration is a way to customize the behavior of your application using in-app parameters. This can be used to implement feature flags, adjust log level settings, stream configurations, or virtually any other setting that alters the behavior of the application dynamically. You can achieve this either through the Formant web app or our command-line tool.  

    Making application configuration work for you

    Remote application configuration basically means you’re allowing a portion of your app to be configured from the cloud, saving you the hassle of releasing a patch version every time you wish to make a minor change and A/B test new features. Here are just a few examples of what you can do using Formant’s application configuration interface: 

    • Changing frame rate, clip distance and other camera-related settings

    • Setting autonomy specific coefficients and parameters

    • Safety limits for velocity, acceleration, and min safe distances

    The above examples are only a small sampling of what remote application configuration can do for your team. One can imagine all sorts of unique, case-specific scenarios where application configuration would prove valuable. 

    Remote application configuration is a powerful tool, which can save untold amounts of time and energy on debugging and managing your application and experience. After some basic initial configuration, this tool will make your life easier and help your organization stay at the forefront of remote robotic administration. 

    Configure applications

    With the tool, the config value can be set by the user in the application configuration tool, using either the Formant web application or directly from the command line. One can also choose whether to apply the changes on an individual device or an entire fleet of devices. The agent, which fetches configuration periodically usually sees the changes within a few seconds. 

    From the burger menuselect Settings ⇒ Devices ⇒ General Settings ⇒ Application Configuration

    Configure your applications running on the robot using a key:value pair. Once the key:value paid is saved, this configuration is sent directly to the device.

    Keys and values must be strings less than 256 characters; up to 100 pairs are supported.

    Your application can register for config update callback which will be run when the agent fetches a new configuration. From inside these callbacks, you can update the application state with the latest change.

    Application configuration is useful for remotely updating properties of your application such as the sample rate of a sensor, a feature flag, or a log verbosity level. Your application can read the configuration using Formant Agent’s Python interface. For example code that reads application configuration via the Formant Agent API, please see Github.

    You can add, remove, or update your agent application configuration through the Formant web application or with fctl.

    © 2020 Formant • 1999 Bryant St · San Francisco, CA 94110