boschglobal / automotive-bus-schema

Automotive Bus Schema for data exchange between simulation models.
Apache License 2.0
3 stars 4 forks source link

Support non register exchange of CAN Frames #4

Closed timrulebosch closed 2 years ago

timrulebosch commented 2 years ago

For simplified (idealized) network models, CAN Frames can be exchanged without considering the Register File. Support the exchange of CAN Frames without L2 Register/MetaFrames.

There actually could be an abstraction at the ECU level, with a representation for each CAN Bus, which then compries the CAN Frames.

Direction is inferred by the direction these messages take through an API (rather than as a property of the Register File).

table Frame {
    // CAN Frame.
}
table BusSlice {
    // These frames occurred for the Bus time period (slice).
    bus_id:uint;
    frames:[Frame];
}
table NetworkSlice {
    busses:[BusSlice];     
}

It may be argued that bus_id (above) can also be a property of Frame. Therefore selecton of a root type which supports several usecases (routing/switching of Frames) might also be interesting.

https://github.com/boschglobal/automotive-bus-schema/blob/abad0be62eb693ecc4bc84a0f3ab63dc84a309cd/schemas/register/can.fbs#L71

TGoeppel commented 2 years ago

The stream interface might work for Ethernet, too. FR and LIN need some kind of synchronization on the simulation system level. CAN RTR might work but it would need some kine of buffering at the endpoint - that's currently out of scope.