Welcome to my internship work blog!

In this blog, I'll be posting about my experience as an intern at JdeRobot.

Week 6 (May 27th - May 31st)

First of all, during this sixth week of internship, I have continued investigating the problem in which, after pulling again the issue 1219 branch with GitHub Desktop, I appeared to have different errors to those that my co-worker presented.

I checked the new code and noticed that the branch pull was done well, as all files were up to date with commits. After researching in more detail other possibilities and thinking that the error could be mine locally, I have spoken with my co-worker Carlos and he tried to pull the branch again. Thanks to this, we have discovered that the module not found error came from the branch itself. Also, regarding the "Do not know event named 'launch_world'" error, I discovered, thanks to Carlos, that it was due to the version of RADI that I was using (version 4.4.32), which was older and did not take into account the new RAM changes. Now, I use RADI version 4.5.12.

Following with the module not found error, I investigated where it came from and I discovered that the modules were not being detected because the html templates of Unibotics were still being used, but they were looking for the modules in the Robotics Academy (submodule) folders. Therefore, two changes had to be made to settings.py and the get_template_for_exercise function of the Unibotics helper to adapt the path of the exercises and take the Robotics Academy templates instead. This was the missing modification to the issue branch that made me see a different console error.

On the other hand, once this was fixed, I have been able to see the new problem:



Configuration error - Unibotics issue 1219


Seeing that this problem was related to RAM, I have been researching in depth its functioning through its repository documentation and source code, already understanding the procedure that it follows to connect and launch exercises. Also, I’ve checked over the Robotics Academy and Unibotics data dump.

Finally, we detected that the problem came from the world launch step, where a configuration file is requested. So, I’ve been researching and searching the Robotics Academy files to know where the RAM world launch step is being invoked to see how this configuration file is being passed. In this process, I discovered the comms_manager library which is in charge of dialogue with the RAM. I have also discovered some mentions of the launch command and configuration file in the WorldIndicator and WorldSelector React components. This is what I have to continue studying this next week to see how they use the launch command and where they get the exercise-config.

JdeRobot logo URJC and ETSII logo