<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">%===================================================================
\subsection{Preliminaries: Pull Latest Code and Mission Files}
\label{sec_get_code}

At each stage of the lab we need to be mindful of the code on both the
laptop and the PABLO. Changes may be made to (a) course-provided code,
(b) the course baseline mission, and (c) your own \var{moos-ivp-extend}
code. Use this section as a reminder to update frequently. 

\vspace{0.1in}
\noindent
To recap, here are the relevant trees:

\begin{packed_itemize}
\item \var{moos-ivp}: All the core autonomy code, and MOOS middleware
\item \var{moos-ivp-2680}: \app{uFldRescueMgr}, \app{gen\_swimmers},
  and the baseline \var{BHV\_Scout} behavior in \var{lib\_bhv\_scout}.
\item \var{moos-ivp-extend}: Your \app{pGenRescue} and your
  \var{BHV\_Scout} behavior.
\item \var{moos-ivp-pavlab}: (PABLO only) When running on the Heron,
  we need the \app{iM300} app. This should already be on your provided PABLO.
\item \var{pablo-common}: (PABLO only) Enviroment settings for the Heron.
  This should already be on your provided PABLO.
\end{packed_itemize}

\noindent
The \var{pablo-common} and \var{moos-ivp-pavlab} trees are only on
your PABLO. The PABLO boot script is configured to automatically
update the \var{pablo-common} tree when the PABLO boots and finds the
Internet. If the \var{moos-ivp-pavlab} tree should happen to need an
update, this would need to be done by entering the tree and performing
an update and build. This is unlikely and only done if a change to
\app{iM300} needs a change during the course of the lab.

%-------------------------------------------------------------------
\subsubsection*{Ensure the Latest Code and Updates {\em On your Laptop}}

Updates will be needed on your laptop to run the initial
simulations. You may also be using your laptop to act as the shoreside
computer during field tests. You will need to update and possibly
rebuild: the \var{moos-ivp}, \var{moos-ivp-2680}, and
\var{moos-ivp-extend} trees:

\vspace{0.1in}
\begin{consoleverb}
$ cd ~/moos-ivp; svn update; ./build-ivp.sh
$ cd ~/moos-ivp-2680; svn update; ./build.sh
$ cd ~/moos-ivp-extend; svn update (or git pull); ./build.sh
\end{consoleverb}
\vspace{0.1in}

\noindent
In the first rescue lab you may not already have the
\var{moos-ivp-2680} tree. It can be obtained as below, placing it
alongside your \var{moos-ivp} and \var{moos-ivp-extend} trees. You
will need to augment your shell path accordingly.

\vspace{0.1in}
\begin{consoleverb}
$ svn co https://oceanai.mit.edu/svn/moos-ivp-2680-aro/trunk moos-ivp-2680
\end{consoleverb}
\vspace{0.1in}

%-----------------------------------------------------------------------
\subsubsection*{Ensure the Latest Code and Updates {\em On your PABLO}}
\label{sec_get_code_pab}

Updates will also be needed on your PABLO.  Re-connect your
PABLO to your laptop with Internet Sharing enabled, and update the
following trees:

\begin{packed_itemize}
\item The \var{moos-ivp} tree, and build
\item The \var{moos-ivp-2680} tree, and build
\item The \var{moos-ivp-pavlab} tree, and build
\item The \var{pablo-common} tree (build not needed)
\item The \var{moos-ivp-extend} tree, and build
\end{packed_itemize}

\noindent
The first four trees above are on your PABLO when you received it, but
may need updating if changes were made during the course of the
lab. The \var{moos-ivp-extend} tree was not on your PABLO when you
received it (since it is your individual work), but should be on your
PABLO as part of Lab 11 Introduction to the PABLO.


\vspace{0.1in}
\begin{consoleverb}
$ cd ~/moos-ivp; svn update; ./build-ivp.sh
$ cd ~/moos-ivp-2680; svn update; ./build.sh
$ cd ~/moos-ivp-pavlab; svn update; ./build.sh
$ cd ~/moos-ivp-extend; svn update (or git pull); ./build.sh
$ cd ~/pablo-common; svn update
\end{consoleverb}
\vspace{0.1in}

\noindent
Note: In a pinch, you can do any of the above steps while your PABLO
is connected to a Heron, but the more you can do {\em before} you work
with the Heron, the better. This will free up Heron time and TA time
for other users.

</pre></body></html>