What is Cooja Used For

Through this article, our technical professionals have enlisted the substantial utilizations of Cooja simulator and the execution of Cooja simulation too. Let’s start with the keynotes about Cooja.

Cooja is deployed to simulate the sensor nodes as it required for the implementation of Java native interface. Then, it is capable to implement the programming codes in Contiki OS and Tiny OS.

Mainly, we have highlighted the most significant functionalities based on Cooja in the following.

  • It is deployed to emulate the motes to reach the hardware level and provide the accurate power consumption for the protocols including
  • Centroid
  • Fingerprint
  • DV-Hop
  • Cooja is used to evaluate the performance of various localization protocols
  • It is assistive for the motes based on Contiki simulation

To make a note clear, our technical experts have highlighted the Cooja code for Z1mote creation process.

public class Z1Mote extends MspMote {

private static Logger logger = Logger.getLogger(Z1Mote.class);

public Z1Mote(MspMoteType moteType, Simulation sim) {

super(moteType, sim);



protected boolean initEmulator(File fileELF) {

try {

Z1Node z1Node = new Z1Node();

registry = z1Node.getRegistry();

z1Node.setFlash(new CoojaM25P80(z1Node.getCPU()));


prepareMote(fileELF, z1Node);

} catch (Exception e) {

logger.fatal(“Error when creating Z1 mote: “, e);

return false;


return true;




public String toString() {

return “Z1 ” + getID();




Finally, we have illustrated the process of simulation using Cooja and to start the simulation we have to press the start option in Cooja simulation controller window.

Simulation Execution

If you can issues, you guys can reach us to make a clarity about that.

Opening Time


Lunch Time


Break Time


Closing Time


  • award1
  • award2