Create an AWS IoT FleetWise signal catalog - AWS IoT FleetWise

Create an AWS IoT FleetWise signal catalog

You can use the CreateSignalCatalog API operation to create a signal catalog. The following example uses AWS CLI.

To create a signal catalog, run the following command.

Replace signal-catalog-configuration with the name of the .json file that contains the configuration.

aws iotfleetwise create-signal-catalog --cli-input-json file://signal-catalog-configuration.json
  • Replace signal-catalog-name with the name of the signal catalog that you're creating.

  • (Optional) Replace description with a description to help you identify the signal catalog.

For more information about how to configure branches, attributes, sensors, and actuators, see Configure AWS IoT FleetWise signals.

{ "name": "signal-catalog-name", "description": "description", "nodes": [ { "branch": { "fullyQualifiedName": "Types" } }, { "struct": { "fullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage" } }, { "struct": { "fullyQualifiedName": "Types.std_msgs_Header" } }, { "struct": { "fullyQualifiedName": "Types.builtin_interfaces_Time" } }, { "property": { "fullyQualifiedName": "Types.builtin_interfaces_Time.sec", "dataType": "INT32", "dataEncoding": "TYPED" } }, { "property": { "fullyQualifiedName": "Types.builtin_interfaces_Time.nanosec", "dataType": "UINT32", "dataEncoding": "TYPED" } }, { "property": { "fullyQualifiedName": "Types.std_msgs_Header.stamp", "dataType": "STRUCT", "structFullyQualifiedName": "Types.builtin_interfaces_Time" } }, { "property": { "fullyQualifiedName": "Types.std_msgs_Header.frame_id", "dataType": "STRING", "dataEncoding": "TYPED" } }, { "property": { "fullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage.header", "dataType": "STRUCT", "structFullyQualifiedName": "Types.std_msgs_Header" } }, { "property": { "fullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage.format", "dataType": "STRING", "dataEncoding": "TYPED" } }, { "property": { "fullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage.data", "dataType": "UINT8_ARRAY", "dataEncoding": "BINARY" } }, { "branch": { "fullyQualifiedName": "Vehicle", "description": "Vehicle" } }, { "branch": { "fullyQualifiedName": "Vehicle.Cameras" } }, { "branch": { "fullyQualifiedName": "Vehicle.Cameras.Front" } }, { "sensor": { "fullyQualifiedName": "Vehicle.Cameras.Front.Image", "dataType": "STRUCT", "structFullyQualifiedName": "Types.sensor_msgs_msg_CompressedImage" } }, { "struct": { "fullyQualifiedName": "Types.std_msgs_msg_Float64" } }, { "property": { "fullyQualifiedName": "Types.std_msgs_msg_Float64.data", "dataType": "DOUBLE", "dataEncoding": "TYPED" } }, { "sensor": { "fullyQualifiedName": "Vehicle.Velocity", "dataType": "STRUCT", "structFullyQualifiedName": "Types.std_msgs_msg_Float64" } }, { "struct": { "fullyQualifiedName": "Types.sensor_msgs_msg_RegionOfInterest" } }, { "property": { "fullyQualifiedName": "Types.sensor_msgs_msg_RegionOfInterest.x_offset", "dataType": "UINT32", "dataEncoding": "TYPED" } }, { "property": { "fullyQualifiedName": "Types.sensor_msgs_msg_RegionOfInterest.y_offset", "dataType": "UINT32", "dataEncoding": "TYPED" } }, { "property": { "fullyQualifiedName": "Types.sensor_msgs_msg_RegionOfInterest.height", "dataType": "UINT32", "dataEncoding": "TYPED" } }, { "property": { "fullyQualifiedName": "Types.sensor_msgs_msg_RegionOfInterest.width", "dataType": "UINT32", "dataEncoding": "TYPED" } }, { "property": { "fullyQualifiedName": "Types.sensor_msgs_msg_RegionOfInterest.do_rectify", "dataType": "BOOLEAN", "dataEncoding": "TYPED" } }, { "branch": { "fullyQualifiedName": "Vehicle.Perception" } }, { "sensor": { "fullyQualifiedName": "Vehicle.Perception.Obstacle", "dataType": "STRUCT", "structFullyQualifiedName": "Types.sensor_msgs_msg_RegionOfInterest" } } ] }
Note

You can download a demo script to convert ROS 2 messages to VSS .json files that are compatible with the signal catalog. For more information, see the Vision System Data Developer Guide.

Vision system data is in preview release and is subject to change.

If you enabled encryption using a customer managed AWS KMS key, include the following policy statement so that your role can invoke the CreateSignalCatalog API operation.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:KMS_KEY_REGION:KMS_KEY_ACCOUNT_ID:key/KMS_KEY_ID" ] }, ] }