driftregion / iso14229

ISO 14229 (UDS) server and client for embedded systems
MIT License
231 stars 82 forks source link

Can it support doip #48

Open wangzhaofeng-max opened 2 days ago

wangzhaofeng-max commented 2 days ago

How can i do when i want to use this repo , when i have already receive the doip message such as uds 22 service like 22 d0 10

driftregion commented 1 day ago

Hi @wangzhaofeng-max, you need to write a wrapper to connect your existing DoIP stack to iso14229. Check out the isotp-c transport in src/tp/isotp_c.h for an example.

Yours will look something like this:

typedef struct {
    UDSTpHandle_t hdl;  // pointers to wrapper functions shown below
    YourDOIPStack_t stack; // your DoIP stack implementation
} UDSDoIP_t;

The wrapper function documentation is here: https://github.com/driftregion/iso14229/blob/251b16f39463a4517b6fd64dd700fde7134f4744/src/tp.h#L50-L95

After implementing the wrapper, you can use it like this: https://github.com/driftregion/iso14229/blob/251b16f39463a4517b6fd64dd700fde7134f4744/examples/linux_server/main.c#L53