Demonstrates the Sensor service publishing and subscribing through Platform-independent Publish Subscribe (PiPS).
pips_pubsub -p|-s [-t provider_name]
QNX Neutrino
Enable pips_pubsub to run as a publisher. Running pips_pubsub as a publisher means that pips_pubsub publishes sensor data from the Sensor service to subscribers through PiPS with any of its supported providers (e.g. Fast RTPS).
Enable pips_pubsub to run as a subscriber. Running pips_pubsub as a subscriber means that pips_pubsub subscribes to sensor data that's published through the Sensor service through PiPS. In turn, pips_pubsub publishes the data as interim data through the Sensor service.
Specify the name of the provider that's to provide the publish-subscribe service through PiPS. Valid providers are:
If you don't specify a provider name, then FASTRTPS is used.
The pips_pubsub application runs as either a publisher or subscriber, or both. The availability of the providers is determined by what you have installed on your target.
As a publisher, it reads data for each of your configured sensors in your sensor configuration file as different topics. It only publishes the data if there are subscribers subscribed to the data. As a subscriber, pips_pubsub subscribes to the data published from the publisher and in turn publishes the sensor data from the topics as interim data.
You must have the Sensor service already running before you can start pips_pubsub. The Sensor service must be started with the appropriate sensor and interim data configuration files for your publisher and subscriber. Your interim data configuration file must contain interim data units that directly correspond to sensor units in your sensor configuration file. You can refer to the example pair of sensor and interim data configuration files from your reference images:
For more information on sensor and interim data configuration files, see Sensor configuration file and Interim Data configuration file respectively.
You must start the Sensor service with the sensor configuration file first before you run pips_pubsub as a publisher. For example:
# /bin/sensor -U 521:521 -r /roll -v -c /etc/system/config/adas_example_capture.conf & # pips_pubsub -p
You must start the Sensor service with the interim data configuration file first before you run pips_pubsub as a subscriber. For example:
# /bin/sensor -U 521:521 -r /roll -v -d /etc/system/config/adas_example_capture_interim.conf & # pips_pubsub -s
You must start the Sensor service with the sensor and interim data configuration file first before you run pips_pubsub as a publisher and a subscriber. For example:
# /bin/sensor -U 521:521 -r /roll -v -c /etc/system/config/adas_example_capture.conf -d /etc/system/config/adas_example_capture_interim.conf & # pips_pubsub -p -s
On the target whose sensor data you are publishing:
{ "unicast" : "10.122.36.198", ...
The SOME/IP publisher configuration file is a text-based file whose content is in JSON format.
# slay sensor
# /bin/sensor -U 521:521 -r /roll -v -c /etc/system/config/adas_example_capture.conf -d /etc/system/config/adas_example_capture_interim.conf &
# pips_pubsub -p -t SOMEIP &
On the target that's subscribing for sensor data:
{ "unicast" : "10.122.36.193", ...
The SOME/IP publisher configuration file is a text-based file whose content is in JSON format.
# /bin/sensor -U 521:521 -r /roll -v -d /etc/system/config/adas_example_capture_interim.conf &
# pips_pubsub -s -t SOMEIP &
# sensor_example -d -s