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

Notification Process

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:
Service ID |
Instance ID |
Eventgroup ID |
Event ID |
Size |
Read/Write |
Description |
---|---|---|---|---|---|---|
0x1234 |
0x5678 |
0x4425 |
0X8777 |
44 Byte |
Read Write |
|
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 |
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
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

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.