Skip to content

CreOS configurations

The internal Linux computer of the Origin One, powered by an Nvidia Jetson Orin NX, runs Avular's proprietary CreOS, which is based on Linux for Tegra. This environment is carefully configured to ensure optimal performance and stability. Therefore, it is highly recommended not to make any changes to the CreOS environment, except for those explicitly mentioned in the online user manual. Unauthorized modifications can conflict with the pre-installed software and may result in unexpected behavior of the robot.

The internal Linux computer hosts several Docker containers that encapsulate most of the functionalities of the Origin One platform. The number of containers running on the system depends on the specific configuration of the Origin One that you have purchased.

The avular command can be used to configure and interact with the Origin. The avular command is only available on the native CreOS of the internal Linux computer, therefore only outside any Docker container.

Wi-Fi mode

The Origin can be configured to setup an access point, and to connect to a Wi-Fi network at the same time. The Wi-Fi adapter can be configured with the avular connectivity command.

Access point

The Origin can be configured to enable an access point. The access point will allow you to directly connect to the Origin over Wi-Fi. By default the access point will be named Origin <Serial>, but this can be modified. When you connect to the access point, you can access the Origin at 192.168.192.1. By default the access point will not have a password. We strongly recommend to set a password.

The access point can be enabled with the following command:

sudo avular connectivity enable_ap [-s "<SSID>"] [-p <PASSWORD>]
# Or alternatively if you just want to enable the access point without changing the SSID or password
sudo avular connectivity enable_ap
Please note the following:

  • <SSID> is to replaced by the desired network name.
    • If the network name contains a [space] character, in the command line the [space] is to be replaced by \[space]. For example if the desired <SSID> is Origin Network than the prompt must be:
      sudo avular connectivity enable_ap -s "Origin\ Network" -p <PASSWORD>
      
  • <PASSWORD> is to be replaced by a password with at least 8 characters.

You can disable the access point with the following command:

sudo wifi_ap disable

Wi-Fi network

The Origin can be configured to connect to a Wi-Fi network. The Wi-Fi network can be configured with the avular connectivity command. By default the Origin does not know any Wi-Fi networks. You can add a Wi-Fi network using the standard Linux Network Manager tool nmtui or by using the avular connectivity command.

To add a Wi-Fi network, you can use the following command:

sudo avular connectivity enable_client_mode -s <SSID> [-p <PASSWORD>]
Please note the following:

  • <SSID> is to replaced by the desired network name.
    • If the network name contains a [space] character, in the command line the [space] is to be replaced by \[space]. For example if the desired <SSID> is Origin Network than the prompt must be:
      sudo avular connectivity enable_client_mode -s "Origin\ Network" -p <PASSWORD>
      
  • <PASSWORD> is to be replaced by a password with at least 8 characters.

To disconnect from the Wi-Fi network, you can use the following command:

sudo wifi_client_mode disable

Interacting with the Docker containers

The Origin One is by default deployed with Avular containers and a standard User container. These containers encapsulate the core functionalities and user-specific applications of the platform. For more information about the User container, click here.

Listing Docker containers

When managing Docker containers on the Origin One platform, it is often necessary to check the status of the running containers. This can help you ensure that all necessary services are up and running, and can also assist in troubleshooting any issues that may arise. The avular compose command provides a convenient way to list the status of Avular application Docker containers on the system. The Avular application containers are in control of the robot from a "App" perspective, such as the Platform control software and Autopilot. The running application containers can be visualized as following:

avular compose show

In addition to listing the Avular application containers, you may also want to see all running containers on the system, including user-specific containers and low-level system containers. This can be done using the standard Docker command:

docker ps
This command will display a list of all containers, their statuses, and other relevant information. This is useful for gaining a comprehensive overview of all container activities on the Origin One platform, including your own containers.

Restarting Docker containers

When working with Docker containers, there may be instances where an application becomes unresponsive or stuck. Restarting the Docker container can often resolve these issues by stopping and starting the container, effectively resetting the application environment.

To restart Avular Application containers, you can use the following command:

avular compose stop

avular compose start
This command will stop and restart all Avular Application containers such as the Platform control software and Autopilot. Restarting the containers will also restart any services or applications running within them, including ROS 2 nodes, ensuring that your application returns to a functional state.

To restart a User Application container, you can use the following command:

docker restart <container-name>

Accessing Docker container logs

When managing Docker containers, it is often necessary to view the logs to diagnose issues or monitor the behavior of applications. If you need to view the logs of a specific container, you can use the standard Docker command:

docker logs -f <container_name>
This command will display the logs for the specified container in real-time, allowing you to monitor its output as it runs.

The avular compose command provides a convenient way to show the logs of all Avular application containers on the system. This can be done using the following command:

avular compose logs
This command aggregates the logs from all Avular application containers, providing a comprehensive view of the system's activities.

In some cases, you may need to clear the logs to free up space or reset the log files. This can be done using the following commands: {% raw %}

LOG_FILE=$(docker inspect --format='{{.LogPath}}' <container_name>)

sudo truncate -s 0 $LOG_FILE
{% endraw %} These commands will locate the log file for the specified container and truncate it, effectively clearing its contents.

Changing Linux user password

The internal Linux computer uses avular as the username. The accompanied default password is also avular. It is recommended to change the default password after logging in for the first time. This can be done with the following command:

passwd avular
Follow the instructions in the terminal. A prompt will ask for the current password and to repeat twice the new password. The password needs to be at least 8 characters long. The password will not be displayed on the screen as you type it and if the password change is successful, you will receive a confirmation message. Please take great care not to lose the password.

Info

If you need to abort changing the password, proceed with entering CTRL + U followed by CTRL + D. The command line will abort changing the password and will prompt passwd: password unchanged.

Warning

Losing a modified password will require a full factory restore of the Linux computer by Avular. Take good care not to lose the password.