The MTASC Boot Process
Maintained by: mikerb@mit.edu Get PDF
src: project-pavlab/mtasc/mt_bootup
1 The MTASC Boot Process
1.1 The PABLO Boot Codes
1.2 Cache Files Example Snippets
1.3 Aliases
1 The MTASC Boot Process
When the MTASC is powered on, it series of event unfolds, culminating with hopefully all PABLO boxes booted and ready to run a mission. This process is discussed here.
1.1 The PABLO Boot Codes [top]
PABLOs are normally configured to have a USB blinkstick LED inserted in one of its two external USB ports. This blinkstick can be commanded to display one of several colors in steady or blinking modes. As the PABLO is booting, the boot process modifies the LED state to indicate the current step in the boot process. If the LED reaches a steady green color, then everything has succeeded. Since this is the most visual part of the boot process, the reference codes are presented first:
Figure 1.1: Boot Codes: The startup code blinks white and proceeds through the boot stages to one of a few terminal codes: green (success) or red (failure).
During the startup phase, the PABLO will boot and look to confirm an Internet connection. If if does not succeed within 20 seconds of trying, it will abort the remainder of the steps and show a solid red light on the LED.
If an Internet connection is established, the code update phase begins. The three codebases, moos-ivp, moos-ivps-swarm, moos-ivp-pavlab are all available with anonymous read-only access. Each codebase first pulls any available updates from the version control system and then proceeds to build the codebase if required. In this way each PABLO automatically has the most recent code changes upon reboot. This phase may be quite quick if no code changes have been made recently, or quite long if say a full rebuild of the MOOS-IvP tree is needed. At least the LED status light will give the user some indication of what is happening.
Once the code update phase is complete, if all updates and builds were successful the LED will show a steady green. A blinking red indicates one of the updates or builds failed. More detail can be gleened from examining the .rebootlog on the PABLO as discussed in Section ???.
The boot process is executed by a BASH script on the PABLO called upon_reboot.sh, discussed next.
1.2 Cache Files Example Snippets [top]
1.3 Aliases [top]
pup='find_pablo_init.sh -v' PABLO_FILES=" ${HOME}/.pablo_names" PABLO_FILES+=" ${HOME}/.pablo_ips" PABLO_FILES+=" ${HOME}/.pablos_byname" PABLO_FILES+=" ${HOME}/.pablos_byip" alias hhp='head -n 50 ${PABLO_FILES}' alias hp='head -n 5 ${PABLO_FILES}'
Page built from LaTeX source using texwiki, developed at MIT. Errata to issues@moos-ivp.org. Get PDF