Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-21269

Update the Middleware Code by Moog to Use the Latest SAL Version

    XMLWordPrintable

Details

    Description

      Update the middleware code by Moog to use the latest SAL version. At this moment, the ts_sal 4.0 is unavailable. Therefore, the latest version of ts_sal and ts_xml will be used. The code update might be needed for the possible DDS/ xml interface changes. This task will also try to find a way to test the code even though the hexapod/ rotator cRIO controller and hardware are unavailable.

      Attachments

        Activity

          ttsai Te-Wei Tsai added a comment - - edited

          Tried to follow the following page to use the yum to get the build SAL repo:

          https://confluence.lsstcorp.org/display/LTS/SAL+RPM%27s+building+and+using

          The list of available repos is here:

          https://project.lsst.org/ts/lsstrepo/

          Michael mentioned I need to replace 10.0.100.1 with project.lsst.org/ts in the lsst-ts.repo file.

          I need to set the following path variables by myself: LSST_DDS_DOMAIN, LSST_DDS_DOMAIN, and LSST_SDK_INSTALL.

           

          Michel suggested the following:

          export LSST_DDS_DOMAIN=mytesting
          source /opt/OpenSpliceDDS/V6.9.0/HDE/x86_64.linux/release.com
          export TOPIC_LIB=/opt/lsst/ts_sal/lib
          export LD_LIBRARY_PATH=${TOPIC_LIB}:${LD_LIBRARY_PATH}

          ttsai Te-Wei Tsai added a comment - - edited Tried to follow the following page to use the yum to get the build SAL repo: https://confluence.lsstcorp.org/display/LTS/SAL+RPM%27s+building+and+using The list of available repos is here: https://project.lsst.org/ts/lsstrepo/ Michael mentioned I need to replace 10.0.100.1 with project.lsst.org/ts in the lsst-ts.repo file. I need to set the following path variables by myself: LSST_DDS_DOMAIN, LSST_DDS_DOMAIN, and LSST_SDK_INSTALL.   Michel suggested the following: export LSST_DDS_DOMAIN=mytesting source /opt/OpenSpliceDDS/V6.9.0/HDE/x86_64.linux/release.com export TOPIC_LIB=/opt/lsst/ts_sal/lib export LD_LIBRARY_PATH=${TOPIC_LIB}:${LD_LIBRARY_PATH}
          ttsai Te-Wei Tsai added a comment - - edited

          Prepare the SAL environment by Dockerfile as the following:

          https://github.com/lsst-ts/ts_Dockerfiles/tree/develop/hex_rot_middleware

          ttsai Te-Wei Tsai added a comment - - edited Prepare the SAL environment by Dockerfile as the following: https://github.com/lsst-ts/ts_Dockerfiles/tree/develop/hex_rot_middleware
          ttsai Te-Wei Tsai added a comment - - edited

          The header file "os.h" in DDS was renamed to "vortex_os.h"based on the following page:

          https://istkb.adlinktech.com/article/fixed-bugs-changes-vortex-opensplice-6-6-x/

          ttsai Te-Wei Tsai added a comment - - edited The header file "os.h" in DDS was renamed to "vortex_os.h"based on the following page: https://istkb.adlinktech.com/article/fixed-bugs-changes-vortex-opensplice-6-6-x/
          ttsai Te-Wei Tsai added a comment - - edited

          Noticed the new commands (hexapod) in SAL 3.10 not implemented: abort, setLogLevel, setSimulationMode, and setValue.

          Do not find the command (hexapod): "stop" in the SAL 3.10.

          Not sure I need to use the abort to replace stop or not. After the discussion with Rob and Andy, we decided to add this command (stop) back to the ts_xml for hexapod and rotator. Before the real work, I send an email to Harini for the history.

          ttsai Te-Wei Tsai added a comment - - edited Noticed the new commands (hexapod) in SAL 3.10 not implemented: abort, setLogLevel, setSimulationMode, and setValue. Do not find the command (hexapod): "stop" in the SAL 3.10. Not sure I need to use the abort to replace stop or not. After the discussion with Rob and Andy, we decided to add this command (stop) back to the ts_xml for hexapod and rotator. Before the real work, I send an email to Harini for the history.
          ttsai Te-Wei Tsai added a comment -

          Updated the following page for the use of rpm to get SAL:

          https://confluence.lsstcorp.org/display/LTS/SAL+RPM%27s+building+and+using

          ttsai Te-Wei Tsai added a comment - Updated the following page for the use of rpm to get SAL: https://confluence.lsstcorp.org/display/LTS/SAL+RPM%27s+building+and+using
          ttsai Te-Wei Tsai added a comment -

          Added the Jenkinsfile to test the googletest and make sure the result is published:

          https://tssw-ci.lsst.org/job/ts_mt_hexRot_middleware/job/tickets%252FDM-21269/

          ttsai Te-Wei Tsai added a comment - Added the Jenkinsfile to test the googletest and make sure the result is published: https://tssw-ci.lsst.org/job/ts_mt_hexRot_middleware/job/tickets%252FDM-21269/
          ttsai Te-Wei Tsai added a comment -

          Added the stop command to Hexapod and Rotator xml.

          ttsai Te-Wei Tsai added a comment - Added the stop command to Hexapod and Rotator xml.
          ttsai Te-Wei Tsai added a comment -

          Updated part of hexapod command.

          ttsai Te-Wei Tsai added a comment - Updated part of hexapod command.
          ttsai Te-Wei Tsai added a comment - - edited

          Updated hexapodSubscriber.cpp to use the latest SAL.

          Updated the rotatorEventSend.cpp to use the latest SAL.

          ttsai Te-Wei Tsai added a comment - - edited Updated hexapodSubscriber.cpp to use the latest SAL. Updated the rotatorEventSend.cpp to use the latest SAL.
          ttsai Te-Wei Tsai added a comment - - edited

          Update the rotatorSubscriber.cpp to use the latest SAL.

          Update the hexapodEventSend.cpp to use the latest SAL.

          Update the rotatorPublisher.cpp to use the latest SAL.

          Update the hexapodPublisher.cpp to use the latest SAL.

          ttsai Te-Wei Tsai added a comment - - edited Update the rotatorSubscriber.cpp to use the latest SAL. Update the hexapodEventSend.cpp to use the latest SAL. Update the rotatorPublisher.cpp to use the latest SAL. Update the hexapodPublisher.cpp to use the latest SAL.
          ttsai Te-Wei Tsai added a comment -

          Created the PR(# 142) to add the stop command into ts_xml for Hexapod and Rotator.

          ttsai Te-Wei Tsai added a comment - Created the PR( # 142 ) to add the stop command into ts_xml for Hexapod and Rotator.
          ttsai Te-Wei Tsai added a comment - - edited

          Fix the minor sal interface changes. The mainTcsClient can be built now. Need to find a way to test it.

          ttsai Te-Wei Tsai added a comment - - edited Fix the minor sal interface changes. The mainTcsClient can be built now. Need to find a way to test it.
          ttsai Te-Wei Tsai added a comment - - edited

          Send the question of salProcessor() to Dave.

          Checked with Dave and he replied as the following:
          The salProcessor call is now required in later versions of sal. It was previously automatically invoked if necessary but this caused issues with the SALPY and was removed.

          Fixed this already.

          ttsai Te-Wei Tsai added a comment - - edited Send the question of salProcessor() to Dave. Checked with Dave and he replied as the following: The salProcessor call is now required in later versions of sal. It was previously automatically invoked if necessary but this caused issues with the SALPY and was removed. Fixed this already.
          ttsai Te-Wei Tsai added a comment -

          Refactored the code to have the same indentation level.

          ttsai Te-Wei Tsai added a comment - Refactored the code to have the same indentation level.
          ttsai Te-Wei Tsai added a comment -

          Updated the middleware code to use the latest SAL version.

          ttsai Te-Wei Tsai added a comment - Updated the middleware code to use the latest SAL version.

          Witnessed a demonstration of the functionality, it appears to work!

          cwinslow Colin Winslow [X] (Inactive) added a comment - Witnessed a demonstration of the functionality, it appears to work!

          People

            ttsai Te-Wei Tsai
            ttsai Te-Wei Tsai
            Colin Winslow [X] (Inactive)
            Colin Winslow [X] (Inactive), Te-Wei Tsai
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Jenkins

                No builds found.