SOME/IP Server Demo

There is an example implementation of SOME/IP server demo available in apps folder. SOME/IP server is in waiting condition for UDP socket connection .Once connected SOME/IP server is ready to send the response to the client.

The below diagram captures the high level flow of client and server of SOME/IP.

Service Discovery Process

SOME/IP Discovery process Sequence Diagram

Notification Process

SOME/IP Notification process Sequence Diagram

In this implementation, a model ECU is created to mimic various features that hold vehicle information like speed, RPM, door state, and gear state. Based on the SOME/IP protocol, if any event group is subscribed to by a client, the notification events will be sent while fields are updated in the corresponding event group, and data will be read and written on particular events(under subscribed eventgroup) with the below-mentioned event IDs.

Following Event IDs are available in the example:

Supported structure based event information read/write

Service ID

Instance ID

Eventgroup ID

Event ID

Size

Read/Write

Description

0x1234

0x5678

0x4425

0X8777

44 Byte

Read Write

Fields in structure
  • Vehicle’s name

  • Vehicle’s power factor

  • vehicle’s RPM

  • vehicle’s speed

  • vehicle’s ODO value

Supported Event IDs

Service ID

Instance ID

Eventgroup ID

Event ID

Size

Read/Write

Description

0x1234

0x5678

0x4465

0x8776

1 Byte

Read Write

Speed Level from 0 to 200

0x1234

0x5678

0x4465

0x8778

1 Byte

Read Write

Gear Value from 0 to 5

0x1234

0x5678

0x4425

0X8779

1 Byte

Read Write

Door state Value from 0 to 1

Supported Method IDs

Method ID

Description

0x427

Method ID used to Read the value of Event ID

0x428

Method ID used to Write the value of Event ID

Read data by Event ID (0x427) service

Few Event IDs are supported in the demo where many of them are automatically incrementing so that it can be read to find the differences.

Write Data By Event ID (0x428) service

Event ID specified as Read/Write are allowed to be written

SOME/IP Server Running Example

Refer to the Supported Platforms page to setup your environmental setup and follow further.

User Configuration for Server

Server Configuration

Socket configuration

Value

SOME/IP server IP address

IP address of server running PC or machine

SOME/IP SD Port

30490

SOME/IP server Port number

30509

  • After project successfully built, someip_server_demo binary generated.

  • Open the terminal in the above folder and run the below command

Linux

  • $ ./someip_server_demo

Server Menu
  • The SOME/IP server initiates the process and waits for the client to connect. After the SOME/IP client starts the process, both the server and client connects and proceed with services.

  • Refer to the SOME/IP protocol page for more details SOME/IP Protocol.