Skip to content

OMNeT++ Tips for Beginners

Here are some tips that can make your life better while using OMNeT++. I don't recommend using it as your primary IDE as it lacks basic functionalities and can be annoying sometimes, but here are the best functionalities available.

IDE Tips

Use the .ned visualiser. It is very useful to understand the architecture of the simulator. Use it extensively to understand how everything is linked together.

Ctrl+click to navigate. Ctrl+click on any variable and it sends you to the file you want. Very useful when navigating the codebase. It works in .ned and .ini files as well.

Manage your tabs. You can search through your opened tabs by using the arrow at the end of the tab bar. You can also right-click on a tab to close all tabs to the right — useful when you go exploring some files quickly and don't want to end up with 90 tabs open.

Use mouse side buttons. If you have mouse side buttons, they can be used to navigate back and forth through the files you visited (assuming you are clicking on variables inside a file).

Use the debug mode extensively. Put breakpoints, go step by step, read variables. It is the only reliable way to know if everything is going smoothly.

Add debug log lines. Put debug lines everywhere to understand which function is called when and in what order during the simulation. Please remove the non-essential ones afterwards to avoid cluttering the logging space. :slightly_smiling_face:

Simulation Window Tips

Control simulation speed. You can change the speed of the simulation, but you can also use the far-right icon to set the simulation to pause at a particular time or event number — very useful when debugging.

Step event by event with F4. Press F4 to advance one event at a time. It is more useful than it looks.

Search the log with Ctrl+F. In the logging panel at the bottom, use Ctrl+F to search. Don't forget to tick backward search, as you are usually at the bottom of the log.

Click on anything for information. You can click on almost everything in the simulation window to get useful information — architecture details, parameters, variable values — as if it were debug mode.

Explore the object tree on the left. At the bottom-left you will find the full tree architecture with all dependencies and inheritance, plus variable values. It is not the most critical panel, but it can be useful sometimes.