We are currently launching rsiconfig from our application, and initially we switched the working folder to the RSI\8.1.x folder so that all the files would be found. We want to keep our specific settings files in the same folder as our exe so we tried the following steps.
- We moved the settings.xml to the exe folder and renamed it to EtherCATsettings.xml. When launching rsiconfig we specify the full path to EtherCATsettings.xml and the RSI starts up fine. However, we realized that the axis files referenced in EtherCATsettings.xml were being picked up from the RSI\8.1.x folder and not the exe folder. We reasoned that this must be because the working directory is set to the RSI\8.1.x folder.
- We changed the launch so that the working directory is the same as the exe folder, and we moved the rsi.lic file to the exe folder as well. If the network is already started this works, but if the network isn’t started we get the following error:
D:\Projects\cli\x64\Debug>c:\rsi\8.1.6\rsiconfig.exe EtherCATsettings.xml
ERROR: Win32 RMP: device map error :: {platformOS.c, line 135} : RT Module failed to initialize RMP : Please check to see that RMP is started and running. GetLastError = 1 (Error 5125) (RSI::RapidCode::Impl::MotionController::InitControl) (Object 0) (File …\source\motioncontroller.cpp) (Line 399) (Version 8.1.6 for 04.04.02.RMP)
RSI_INVALID_ID – this hardware is incompatible with RSI software (Error 1000000003) (RSI::RapidCode::Impl::MotionController::Init) (Object 0) (File …\source\motioncontroller.cpp) (Line 471) (Version 8.1.6 for 04.04.02.RMP)
We can also reproduce the problem running rsiconfig from the Windows CMD window.