The RoFI platform offers a simulator which allows the users to test their software without the necessity to use an actual hardware and therefore, ease and speed up its development.
The simulator is built on top of Gazebo. Gazebo provides the simulator backend and user interface. We provide a model of RoFI with an implementation of the RoFI HAL layer (see software architecture) which interacts with the backend. Therefore, to run user RoFI firmware in a simulator the only thing user needs to do is to compile it using different HAL layer for different target and simply runs the program on a PC. The program connects to the backend and takes control over one of the modules in the simulation. Running each robot as a single process mimics the distributed environment of the actual robots.