X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=apps%2Ftests%2Fdeluge%2FBlink%2Fburn-net;h=36f1f4cbe17ad6046b4cffb14ea51b329bd72e15;hb=e9bfab607e051bae6afb47b44892ce37541d1b44;hp=8f6b436c8064a3464286e6749babc5f118c9b155;hpb=ff6f444a38d8901cbf9fd5f844639f3a5c5be597;p=tinyos-2.x.git diff --git a/apps/tests/deluge/Blink/burn-net b/apps/tests/deluge/Blink/burn-net index 8f6b436c..36f1f4cb 100755 --- a/apps/tests/deluge/Blink/burn-net +++ b/apps/tests/deluge/Blink/burn-net @@ -5,48 +5,62 @@ if [[ ! -x ${TOS_DELUGE} ]] ; then TOS_DELUGE=../../../../tools/tinyos/misc/tos-deluge fi -echo ${TOS_DELUGE} +$TOS_DELUGE > /dev/null + +if [[ $? != 0 ]] +then + echo "Unable to locate tos-deluge." + exit 2 +fi if [ $# -ne 2 ]; then echo "Usage: $0 " - echo " \"micaz\", \"telosb\"" - echo " how many motes will be used in the test" + echo " micaz, telosb, iris or mulle" + echo " how many motes will be used in the test" exit 2 fi PLATFORM=$1 NO_MOTES=$2 -if [ ${PLATFORM} != 'micaz' -a ${PLATFORM} != 'telosb' ]; then - echo "\"$2\" is not a supported platform" +if [ ${PLATFORM} != 'micaz' -a \ + ${PLATFORM} != 'telosb' -a \ + ${PLATFORM} != 'iris' \ + ${PLATFORM} != 'iris' -a \ + ${PLATFORM} != 'mulle' -a \ + ${PLATFORM} != 'epic' ] +then + echo "\"${PLAFTORM}\" is not a supported platform" exit 2 fi +if ! [ -a ${TOSDIR}/lib/tosboot/build/${PLATFORM}/main.ihex ] +then + echo ========================== Compile tosboot for ${PLATFORM} =========================== + ( cd $TOSDIR/lib/tosboot ; make ${PLATFORM} ) +fi + echo ================================ Compile Blink ================================= make clean -CFLAGS=-DDELUGE_BASESTATION make ${PLATFORM} ID=0 function burn_one() { ID=`expr $ID + 1` - echo -n ">>> Please plug mote $ID and type the port to continue: " + echo -n ">>> Please plug mote $ID and type the programming sorce (bsl,PORT | mib510,PORT | eprb,HOST): " read PORT - if [ ${PLATFORM} == 'micaz' ] - then - CFLAGS=-DDELUGE_BASESTATION make ${PLATFORM} reinstall,$ID mib510,${PORT} - elif [ ${PLATFORM} == 'telosb' ] - then - CFLAGS=-DDELUGE_BASESTATION make ${PLATFORM} reinstall,$ID bsl,${PORT} - fi - + CFLAGS=$1 make ${PLATFORM} install,$ID ${PORT} } -while [[ ${NO_MOTES} > 0 ]] +while [[ ${NO_MOTES} > 1 ]] do - burn_one + burn_one -DDELUGE_LIGHT_BASESTATION NO_MOTES=`expr ${NO_MOTES} - 1` done +echo ">>> Note: this last mote will be the basestation! <<<" +burn_one -DDELUGE_BASESTATION +echo -n ">>> Please plug mote $ID and type the communication sorce (serial@PORT:SPEED | network@HOST:PORT) to continue: " +read CPORT echo ' +------------------------------------------------------------------------+' echo ' | |' @@ -58,38 +72,40 @@ echo ' +---------------------------------------------------------------------- read echo ============================= Compile a new Blink ============================== -CFLAGS=-DBLINK_REVERSE\ -DDELUGE_BASESTATION make ${PLATFORM} +CFLAGS=-DBLINK_REVERSE\ -DDELUGE_LIGHT_BASESTATION make ${PLATFORM} echo ========= Upload the new image to the external flash of the last mote ========== -${TOS_DELUGE} ${PORT} ${PLATFORM} -i 0 build/${PLATFORM}/tos_image.xml - -echo ' +-----------------------------------------+' -echo ' | |' -echo ' | Press ENTER to start the dissemination. |' -echo ' | |' -echo ' +-----------------------------------------+' +${TOS_DELUGE} ${CPORT} -i 1 build/${PLATFORM}/tos_image.xml + +echo ' +-----------------------------------------------------+' +echo ' | |' +echo ' | In the next step the dissemination will be started. |' +echo ' | When a node receives a page, the second led (green) |' +echo ' | will blink. |' +echo ' | |' +echo ' | Press ENTER to continue... |' +echo ' | |' +echo ' +-----------------------------------------------------+' read echo ============================= Start dissemination ============================== -${TOS_DELUGE} ${PORT} ${PLATFORM} -d 0 - -echo ' +--------------------------------------------------+' -echo ' | |' -echo ' | Press ENTER when the second led (green) from all |' -echo ' | the motes except the last one stops blinking. |' -echo ' | |' -echo ' +--------------------------------------------------+' -read +${TOS_DELUGE} ${CPORT} -dr 1 + +echo ' +------------------------------------------------------------+' +echo ' | |' +echo ' | The dissemination is completed when the second and third |' +echo ' | led from all the motes except the last one stops blinking. |' +echo ' | |' +echo ' | After a mote gets the whole image he will reboot and |' +echo ' | reprogram itself. If the new image contains Deluge he will |' +echo ' | continue participating in dissemination. |' +echo ' | |' +echo ' | In the next step all the motes except the basestation will |' +echo ' | be rebooted to allow the reprogramming to take place. |' +echo ' | |' +echo ' | After reboot the motes should start blinking the 3rd led |' +echo ' | (blue/yellow). |' +echo ' | |' +echo ' +------------------------------------------------------------+' -echo ===================== Trigger the reboot in the new image ====================== -${TOS_DELUGE} ${PORT} ${PLATFORM} -r 0 - -echo ' +-------------------------------------------------------------+' -echo ' | |' -echo ' | All the motes except the last one should reboot, reprogram |' -echo ' | the internal flash with the new image and start running it. |' -echo ' | The end result should be that the last led (blue/yellow) |' -echo ' | from all the motes except the last one is blinking. |' -echo ' | |' -echo ' +-------------------------------------------------------------+'