What this model is
This is a CAN bus simulation model built for OMNeT++. It was prepared to support research and education on in-vehicle networks, timing behavior, and mixed CAN/Ethernet communication.
The model was used as a practical research tool when studying automotive communication systems and simulation environments based on OMNeT++. As on the previous site, the source code is available on GitHub, and the experimental CAN-Ethernet gateway model is published separately on GitHub.
Main features
- Simulation of CAN message transmission and arbitration behavior
- Support for experiments on in-vehicle network timing and latency
- Use in mixed CAN-Ethernet network studies and related evaluations
- A foundation for research prototypes and classroom demonstrations
- A CAN message router model is included so that CAN-CAN gateway behavior can also be simulated
- Error frames of the CAN protocol were not supported in the released beta version
Environment described on the previous site
- OMNeT++ 4.4.1 or later; the old page notes that 4.4.1 and 4.6 were confirmed
- INET Framework 2.3.0 or 2.5
- INET 2.6 and 3.x were reported to cause compile errors on the old page
- OMNeT++ 5.x was described as unsupported in that version
Useful external references: OMNeT++ · INET Framework
Installation instructions migrated from the previous site
The original page included concrete setup steps. They are preserved here as an archive record. These steps describe the old release structure and old OMNeT++/INET versions, so users should treat them as historical instructions.
- Download and install OMNeT++ and the INET Framework, typically under a directory such as `~/program/`.
- Extract the downloaded archive and copy the distributed files into the INET tree.
0.1.0/src/* -> ~/program/omnetpp-4.4.1/inet/src/
0.1.0/example/* -> ~/program/omnetpp-4.4.1/inet/example/
$ cp -r 0.1.0/src/* ~/program/omnetpp-4.4.1/inet/src
$ cp -r 0.1.0/example/* ~/program/omnetpp-4.4.1/inet/example/ - Move to the OMNeT++ root directory and set the environment.
$ cd ~/program/omnetpp-4.4.1
$ . setenv
$ ./configure - Build inside the `inet` directory.
$ cd inet
$ make clean
$ make makefiles
$ make Example configurations on the previous site
The old page listed the following example directories under `omnetpp-4.4.1/inet/examples/can/`. The page also noted that users could run each example with `./run`, and that they might need `chmod +x run` first.
- `bus1`
- `bus2`
- `messagerouter1`
- `messagerouter2`
Archived screenshots from the previous site
Simple CAN bus example with one sender and one receiver.
CAN bus example with two senders and one receiver.
CAN message router example for gateway-style communication.
Larger CAN message router configuration used in the original examples.
Distribution notes
The old page described the distributed source code as a beta version that might still contain bugs. It also mentioned an experimental CAN-Ethernet gateway model distributed separately on GitHub: can-for-omnet and can-ethernet-gw-for-omnet.
Related work
- Keigo Kawahara, Yutaka Matsubara, Hiroaki Takada, “A Simulation Environment and Preliminary Evaluation for Automotive CAN-Ethernet AVB Networks,” OMNeT++ Community Summit 2014.
- Jun Matsumura, Yutaka Matsubara, Hiroaki Takada, Masaya Oi, Masumi Toyoshima, Akihito Iwai, “A Simulation Environment Based on OMNeT++ for Automotive CAN-Ethernet Networks,” WATERS 2013.
Contact note on the previous site
The previous page welcomed feedback from users of the simulation model and encouraged readers to contact the author by email if they had questions.