COM I-PDU Groups - Overview and Configuration

Micael Coutinho,autosarbswcom

In this post, you will learn about I-PDU groups in all of their glory! We will start by characterizing an I-PDU group and the rules behind them. After that, we will see what happens when an I-PDU group is started and stopped and how that can be done.

During this article, we will connect with a wide array of topics already taught in previous articles. So we recommend you take a look into COM Signal Transmission and Reception Overview (opens in a new tab), COM - Demystifying I-PDU Transmission Modes (opens in a new tab) and COM Signal Retransmission and Retry (opens in a new tab) as a good starting point.

What are I-PDU Groups

I-PDUs can be associated together in the COM, as so called I-PDU groups. This allows them to be managed (started and stopped) as a group. I-PDUs can belong to zero or many I-PDU groups and are started if any I-PDU group which they belong to is started (by default, all I-PDU groups are stopped upon COM initialization) or if they belong to no I-PDU group and the COM is initialized (they can never be stopped too).

Starting and Stopping I-PDU Groups

An I-PDU group can be started or stopped via the APIs Com_IpduGroupStart and Com_IpduGroupStop, respectively. Signals / signal groups can only be sent or received if the I-PDU group they belong to is started. Also, the maximum number of I-PDU groups is statically defined by the parameter ComSupportedIpduGroups. Lastly, I-PDU groups can only contain I-PDUs of the same direction (sending / reception).

This is what happens when an I-PDU is started through the start of its I-PDU group:

Moreover, the Com_IPduGroupStart API can perform more actions, if its Initialize parameter is set to true:

When an I-PDU group is stopped, the following actions occur for the group:

Configuration of I-PDU Groups

I-PDU groups are referenced by each ComIPdu individually inside the COM configuration parameters, as you can see in the picture below (do not worry, we will come back to this picture in a future post):

COM configuration parameters for a ComIPdu container

COM configuration parameters for a ComIPdu container

The ComIpduGroup container itself is quite simpler, containing the following elements:

COM configuration parameters for a ComIPduGroup container

COM configuration parameters for a ComIPduGroup container

Ending Notes

Now that we are reaching the end of this post, I want to mention we will also explore the different COM Filters, COM I-PDUs and other intricate elements in the future, so make sure to stay tuned for that, by following our LinkedIn (opens in a new tab).

If you want to learn more about Classic Autosar in general, we are working on a set of eBooks, which intend to revolutionize the Autosar learning experience and make it way more approachable. So far, I am very excited about how it is turning out, but unfortunately it is still a long way out. You can stay updated and receive a sweet discount when the first eBook is ready by joining the waiting list on top of the page! And no, you will not receive any other promotional emails. See you then!

Author: Micael Coutinho (opens in a new tab)

References:

© AutosarToday —@LinkedIn